https://github.com/compas-dev/compas_nanobind_package_template
Cookiecutter template for COMPAS C++ extensions.
https://github.com/compas-dev/compas_nanobind_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
-
○Committers with academic emails
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (17.2%) to scientific vocabulary
Keywords
Repository
Cookiecutter template for COMPAS C++ extensions.
Basic Info
Statistics
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
- Releases: 0
Topics
Metadata Files
README.md
COMPAS package template for C++/Python binding
Cookiecutter template for COMPAS C++ based 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
- Example project for nanobind
- Python wheel building via cibuildwheel and scikit-build-core for PyPI.
What's included
.githubdatadocsscriptssrctemptests.editorconfig.gitignoreCHANGELOG.mdCONTRIBUTING.mdLICENSEpyproject.tomlREADME.mdrequirements-dev.txtrequirements.txttasks.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 95-99.
By default the package is uploaded to test.pypi.org. For publishing to pypi.org delete lines 97-99.
License
This template is licensed under the terms of the MIT License.
Owner
- Name: compas-dev
- Login: compas-dev
- Kind: organization
- Website: https://compas.dev
- Repositories: 45
- Profile: https://github.com/compas-dev
COMPAS - an open source computational framework for research and collaboration in AEC
GitHub Events
Total
- Push event: 1
Last Year
- Push event: 1
Committers
Last synced: 8 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| Petras Vestartas | p****s@g****m | 17 |
| pv | p****s@g****m | 1 |
Issues and Pull Requests
Last synced: 8 months ago
All Time
- Total issues: 0
- Total pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Total issue authors: 0
- Total pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 0
- Pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- numpy >=1.21.0
- attrs >=17.4 development
- black >=22.12.0 development
- build * development
- bump-my-version * development
- cmake * development
- compas_invocations2 * development
- invoke >=0.14 development
- nanobind * development
- ruff * development
- scikit-build-core * development
- sphinx_compas2_theme * development
- twine * development
- wheel * development
- compas >=2