About
Changes
You can find the complete Chartlets changelog here.
Reporting
If you have suggestions, ideas, feature requests, or if you have identified a malfunction or error, then please post an issue.
Contributions
The Chartlets project welcomes contributions of any form as long as you respect our code of conduct and follow our contribution guide.
If you'd like to submit code or documentation changes, we ask you to provide a pull request (PR) here. For code and configuration changes, your PR must be linked to a corresponding issue.
Development
To set up the Python development environment, with repository root as current working directory:
cd chartlets.py
pip install .[dev,doc]
Testing and Coverage
Chartlets uses pytest for unit-level testing and coverage analysis for its Python code.
cd chartlets.py
pytest --cov=chartlets tests
Coding Style
Chartlets' Python code is formatted by black.
cd chartlets.py
black .
Chartlets' TypeScript code is formatted by prettier.
cd chartlets.js/packages/lib
prettier -w .
Documentation
Chartlets' documentation is built using the mkdocs tool.
cd chartlets.py
pip install .[doc]
cd ..
With repository root as current working directory:
# Write
mkdocs serve
# Publish
mkdocs build
mkdocs gh-deploy
Release on GitHub
This describes the release process for chartlets.
- Check issues in progress, close any open issues that have been fixed.
- Make sure that all unit tests pass and that test coverage is 100% (or as near to 100% as practicable).
- In
chartlets.py/chartlets/version.py,chartlets.js/packages/lib/package.jsonandchartlets.js/packages/demo/package.jsonremove the .dev suffix from version name. - Make sure
CHANGES.mdis complete in bothchartlets.jsandchartlets.py. Remove the suffix (in development) from the last version headline. - Push changes to either main or a new maintenance branch and merge (see above).
- Await results from Github Action workflow.
- Go to
chartlets/releasesand press button“Draft a new Release”.- Tag version is:
v${version}(with a “v” prefix) - Release title is:
${version}(without a “v” prefix) - Paste latest changes from
CHANGES.mdinto field“Describe this release” - Press
“Publish release”button
- Tag version is:
- After the release on GitHub, the Github Actions CI would run to publish both
chartlets.pytoPyPiandchartlets.jstonpm. - Create a new maintenance branch (see above)
- In
chartlets.py/chartlets/version.py,chartlets.js/packages/lib/package.jsonandchartlets.js/packages/demo/package.jsonincrease version number and append a .dev0 suffix to the version name so that it is still PEP-440 compatible. - In
CHANGES.mdadd a new version headline and attach (in development) to it. - Push changes to either main or a new maintenance branch (see above).
- Activate new doc version on mkdocs
License
Chartlets is open source made available under the terms and conditions of the MIT License.
Copyright © 2025 Brockmann Consult Development