https://github.com/compas-dev/compas_package_template

Cookiecutter template for COMPAS extensions.

https://github.com/compas-dev/compas_package_template

Science Score: 26.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (15.8%) to scientific vocabulary

Keywords

cookiecutter python-package template
Last synced: 5 months ago · JSON representation

Repository

Cookiecutter template for COMPAS extensions.

Basic Info
  • Host: GitHub
  • Owner: compas-dev
  • License: mit
  • Language: Python
  • Default Branch: main
  • Homepage:
  • Size: 165 KB
Statistics
  • Stars: 6
  • Watchers: 5
  • Forks: 5
  • Open Issues: 6
  • Releases: 0
Topics
cookiecutter python-package template
Created over 5 years ago · Last pushed over 1 year ago
Metadata Files
Readme License

README.md

COMPAS package template

Cookiecutter template for COMPAS extensions.

Cookiecutter is a command-line utility that lets you quickly bootstrap a new project from a template. It takes a directory tree and copies it into your new project, replacing all the generic info that finds surrounded by templating tags {{ and }} with your project info written in cookiecutter.json.

Features

  • Project directory and file structure
  • Documentation based on Sphinx/reStructuredText
  • Testing framework: pytest
  • Basic setup script to create pip installable packages
  • Automation of common tasks for development workflow based on pyinvoke (generate documentation, run tests, check format, etc.)
  • EditorConfig integration
  • Minimal Github workflows for CI/CD

What's included

  • .github
  • data
  • docs
  • scripts
  • src
  • temp
  • tests
  • .editorconfig
  • .gitignore
  • CHANGELOG.md
  • CONTRIBUTING.md
  • LICENSE
  • pyproject.toml
  • README.md
  • requirements-dev.txt
  • requirements.txt
  • tasks.py

Requirements

Install the cookiecutter command line utility: pip install cookiecutter.

Usage

In the terminal, go to the folder where you want to place your project:

bash cd <your-projects-folder>

Generate a new Cookiecutter template layout:

bash cookiecutter gh:compas-dev/compas_package_template

Go to project folder:

bash cd <project-slug>

Add the project files to the new git repo:

bash git add . git commit -m "Initial commit"

Additional settings

To use the coding style feature with EditorConfig:

Some text editors have a native EditorConfig. If yours doesn't, you can download the appropriate plugin here.

Github Actions

Basic CI/CD has already been setup in the .github folder, including automatic building and testing across systems, documentation generation etc.

Automatic Publishing to PYPI

This requires adding your PYPI token in the repo or organization secrets as PYPI. If you don't need this feature, go to .github/workflows/release.yaml and delete Lines 27~37.

License

This template is licensed under the terms of the MIT License.

Owner

  • Name: compas-dev
  • Login: compas-dev
  • Kind: organization

COMPAS - an open source computational framework for research and collaboration in AEC

GitHub Events

Total
  • Push event: 1
  • Pull request review event: 1
  • Pull request event: 4
  • Fork event: 2
  • Create event: 1
Last Year
  • Push event: 1
  • Pull request review event: 1
  • Pull request event: 4
  • Fork event: 2
  • Create event: 1

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 9
  • Total pull requests: 9
  • Average time to close issues: about 3 hours
  • Average time to close pull requests: 28 days
  • Total issue authors: 3
  • Total pull request authors: 4
  • Average comments per issue: 0.33
  • Average comments per pull request: 1.11
  • Merged pull requests: 7
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 1
  • Pull requests: 2
  • Average time to close issues: N/A
  • Average time to close pull requests: 1 minute
  • Issue authors: 1
  • Pull request authors: 2
  • Average comments per issue: 0.0
  • Average comments per pull request: 0.0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • tomvanmele (7)
  • beverlylytle (1)
  • nizartaha (1)
Pull Request Authors
  • Licini (7)
  • gonzalocasas (1)
  • tomvanmele (1)
  • olekniewiarowski (1)
Top Labels
Issue Labels
bug (4) question (2) enhancement (1)
Pull Request Labels

Dependencies

{{cookiecutter.project_folder}}/requirements-dev.txt pypi
  • attrs >=17.4 development
  • autopep8 * development
  • bump2version >=1.0.1 development
  • check-manifest >=0.36 development
  • doc8 * development
  • flake8 * development
  • graphviz * development
  • invoke >=0.14 development
  • ipykernel * development
  • ipython >=5.8 development
  • isort * development
  • m2r2 * development
  • matplotlib * development
  • nbsphinx * development
  • pydocstyle * development
  • pytest >=3.2 development
  • sphinx >=3.4 development
  • sphinx_compas_theme >=0.15.18 development
  • twine * development
  • wheel * development
{{cookiecutter.project_folder}}/docs/_static/versions.json meteor
pyproject.toml pypi
{{cookiecutter.project_folder}}/pyproject.toml pypi
{{cookiecutter.project_folder}}/requirements.txt pypi
{{cookiecutter.project_folder}}/setup.py pypi