How To Contribute¶
All kinds of contributions are very welcome! You can contribute in various ways, e.g. by
- providing feedback
- asking questions
- suggesting ideas
- implementing features
- fixing problems
- improving documentation
To make contributing to open source projects a good experience to everyone involved, please make sure that you follow our code of conduct when communicating with others.
Ideas, Questions and Problems¶
If you have questions or difficulties using this software, please use the issue tracker.
If your topic is not already covered by an existing issue, please create a new issue using one of the provided issue templates.
If your issue is caused by incomplete, unclear or outdated documentation, we are also happy to get suggestions on how to improve it. Outdated or incorrect documentation is a bug, while missing documentation is a feature request.
NOTE: If you want to report a critical security problem, do not open an issue! Instead, please create a private security advisory, or contact the current package maintainers directly by e-mail.
Development¶
This project uses Poetry for dependency management.
You can run the following lines to check out the project and prepare it for development:
git clone https://github.com/Materials-Data-Science-and-Informatics/fair-python-cookiecutter-demo
cd fair-python-cookiecutter-demo
poetry install --with docs
poetry run poe init-dev
Common tasks are accessible via poe:
-
Use
poetry run poe lint
to run linters manually, add--all-files
to check everything. -
Use
poetry run poe test
to run tests, add--cov
to also show test coverage. -
Use
poetry run poe docs
to generate local documentation
In order to contribute code, please open a pull request.
Before opening the PR, please make sure that your changes
- are sufficiently covered by meaningful tests,
- are reflected in suitable documentation (API docs, guides, etc.), and
- successfully pass all pre-commit hooks.