Skip to content

Contributing

Simulatte is developed on GitHub. The full workflow is in CONTRIBUTING.md in the repository root; the summary below covers the key rules.

Workflow

  1. Clone the repository directly — fork PRs are not accepted.
  2. Create a branch from main:
  3. feature/<name> for new functionality
  4. fix/<name> for bug fixes
  5. Install dependencies and pre-commit hooks:
    uv sync --dev
    uv run pre-commit install
    
  6. Open a pull request against main with a clear description of what changed and why.
  7. All CI checks must pass — tests across Python 3.12–3.14, linting, type checking, and docs build.
  8. At least one approving review is required before merging.
  9. If your change adds or modifies functionality, update docs/ accordingly.

Merging and releases

PRs are squash-merged into main by the maintainer (@dmezzogori). Contributors should not merge their own PRs or create release tags. New versions are published to PyPI by the maintainer via v* tags.

For the complete guidelines see the CONTRIBUTING.md file in the repository.