This is a COMPAS-opinionated template that automates the set up of a new python-based code extension package using cookiecutter. We will, little-by-little, give it our own CREATE Lab twist!
This repository provides you with the basic infrastructure to kickstart your next project: a base folder structure, auto-documentation, testing, pip installing, and easier-integration with Rhino.
- Project directory and file structure
- Documentation based on Sphinx/reStructuredText
- A 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 Travis-CI integration
-
.github -
data -
docs -
docsource -
examples -
src -
temp -
tests -
.bumpversion.cfg -
.editorconfig -
.gitignore -
.travis.yml -
AUTHORS.md -
CHANGELOG.md -
CONTRIBUTING.md -
LICENSE -
MANIFEST.in -
pytest.ini -
README.md -
requirements-dev.txt -
requirements.txt -
setup.cfg -
setup.py -
tasks.py
Install cookiecutter command line: pip install cookiecutter
In the terminal or Anaconda prompt, go to the folder where you store all of your projects, (such as "repos", "github" etc.):
$ cd <your-projects-folder>
Cookiecutter will create a folder for your project and fill it with template files. To instigate this this, run the following command and answer the prompts:
$ cookiecutter gh:createchaos/create_cookiecutter
To access your new project folder via the command line:
$ cd <project-slug>
To activate continuous integration (e.g. you are developing a package that is adequately tested, and every time you want to make an official release, you want to make sure all tests - among other things - are adequately passed).
This template is forked from the COMPAS'framework cookiecutter template for COMPAS extensions, and as such, it is licensed under the terms of the MIT License.