Commandline options
CCDS provides a number of choices that you can use to customize your project. The defaults work well for many projects, but lots of tooling choices are supported. Here are the options for tools that you can use:
Project Name
Type: string
Default value: project_name
A name for the project, for example 'My Project'.
Repo Name
Type: string
Default value: project_name.lower().replace(' ', '_')
Default generated by altering the project_name
. Used for folder and repo name for the project.
Module Name
Type: string
Default value: project_name.lower().replace(' ', '_').replace('-', '_')
Default generated by altering the project_name
to be a compatible Python module name.
Author Name
Type: string
Default value: Your name (or your organization/company/team)
Name of the individual or organization that created the project.
Description
Type: string
Default value: A short description of the project.
A short description that appears in the README.md file by default.
Python Version Number
Type: string
Default value: 3.10
The version of Python that the project will use.
Find more information here: Python version status
Dataset Storage
Type: choice
Default value: none
A cloud storage location for where data should be stored; controls sync_data_up
and sync_data_down
Makefile commands. You will be asked for different additional configuration information depending on your choice.
Choice | Sub-field | Description | More information |
---|---|---|---|
none | No cloud storage configured; Makefile commands to sync data removed. | ||
azure | Store data on Azure Blob Storage. | Docs | |
azure | container | Name of the container on blob storage. | Docs |
s3 | Store data on Amazon S3. | Docs | |
s3 | bucket | The name of the bucket to store data in; can also be a longer S3 path. | Docs |
s3 | aws_profile | The name of the profile to use for the aws CLI. | Docs |
gcs | Store data to Google Cloud Storage | Docs | |
gcs | bucket | The name of the bucket to store data in. | Docs |
Environment Manager
Type: choice
Default value: virtualenv
Tool for managing creating Python environments. Controls make create_environment
Makefile command.
Find more information here: About virtual environments
Choice | Sub-field | Description | More information |
---|---|---|---|
virtualenv | Simple wrapper on venv with more features. | Docs | |
conda | Data science environments supporting non-Python dependencies as well. | Docs | |
pipenv | Manages dependencies and virual environments. | Docs | |
none | Do not add create_environment commands; env management left to the user. |
Dependency File
Type: choice
Default value: requirements.txt
Where to track project-specific dependencies; often paired with specific environment manager.
Choice | Sub-field | Description | More information |
---|---|---|---|
requirements.txt | Most general, least feature-rich format for use with pip . |
pip docs | |
environment.yml | Format used by conda . |
Docs | |
Pipfile | Format used by Pipenv | Docs |
Pydata Packages
Type: choice
Default value: none
Packages automatically added to your requirements file.
Choice | Sub-field | Description | More information |
---|---|---|---|
none | No extra packages. | ||
basic | Basic common data science packages. | ipython, jupyterlab, matplotlib, notebook, numpy, pandas, scikit-learn |
Open Source License
Type: choice
Default value: No license file
Whether to include a license file and which one to use.
Choice | Sub-field | Description | More information |
---|---|---|---|
No license file | No license file will be included. | ||
MIT | MIT License | License | |
BSD-3-Clause | 3-Clause BSD License | License |
Docs
Type: choice
Default value: mkdocs
Whether to include a docs
folder and documentation tools.
Choice | Sub-field | Description | More information |
---|---|---|---|
mkdocs | Include docs folder and mkdocs tools. |
Docs | |
none | No docs folder. |
Include Code Scaffold
Type: choice
Default value: Yes
Whether to include some basic boilerplate code in the Python module.
Choice | Sub-field | Description | More information |
---|---|---|---|
Yes | Includes common data submodules. | ||
No | Empty Python module to start with. |