- Be respectful and considerate in all interactions.
- Before starting work on a new feature or bug fix, please open an issue to discuss it with the maintainers.
- For minor changes or typo fixes, you can directly submit a pull request.
- Try to follow the coding style and conventions used in the existing codebase.
- Write clear, concise commit messages.
- Include tests for new features or bug fixes.
- Update documentation as necessary.
- Be patient and open to feedback during the review process.
- If you're unsure about anything, don't hesitate to ask for help or clarification.
We appreciate your contributions and look forward to working with you!
The Python package uses uv for dependency management,
ruff for linting and formatting,
pre-commit for automated linting on commit,
pytest for testing,
and quartodoc for documentation.
All primary commands are available in the Makefile
in the repo root,
and make
without arguments prints a list of commands.
To get started, use make py-setup
to set up the development environment
with all development dependencies and using the oldest supported version of Python.
Use make py-check
to check tests, formatting, and type hints with a single version of Python,
or make py-check-tox
to check across all supported versions of Python in parallel.
brand_yml
is being developed in tandem with new features planned for Quarto v1.6,
so we also use qvm to manage Quarto versions,
which is pinned in this project.
Use make install-quarto
(assuming qvm is installed) to install the pinned version of Quarto.
Updating the package documentation is not currently automated.
Run make py-docs
to update the documentation.
Docs are published automatically by GitHub Actions to https://posit-dev.github.io/brand-yml/.
This project uses hatch-vcs for versioning.
Version tags for the Python project use py/v{major}.{minor}.{patch}[-{extra}]
.
Releases are automatically built and published to PyPI by the py-release.yml GitHub Action when a new release is created.