Ways to contribute

Test on your machine

Try OpenDraft on your Linux setup, your GPU or your printer and tell us what happens. Real-hardware reports are the biggest gap in testing.

Report a bug

Use the issue form. Include the steps to reproduce it and, if you can share it, a sample drawing.

Add a command

Every OpenDraft command is a small function that asks for input and records one undo step. That makes adding one a good first project.

Port tests

The OpenCalc and OpenPlan prototypes have 44 and 138 tests. These become the specification for the Rust rewrites.

Improve the docs and site

Typo fixes, clearer wording and new guides are always welcome.

Where to go

Questions and ideas go in Discussions. Bugs and feature requests use the issue forms. Security problems do not belong in a public issue: email contact@openengineering.uk with “OpenDraft security” in the subject.

Before you open a pull request

  1. 01

    Open an issue first for anything larger than a small fix, so effort is not wasted.

  2. 02

    Fork the repository and create a branch for your change.

  3. 03

    Read ARCHITECTURE.md before writing code. It records the rules new code follows.

  4. 04

    Add tests for new behaviour and for the bug you are fixing, and try the feature by hand in the app.

  5. 05

    Run the checks CI runs: cargo fmt --all --check, cargo clippy --workspace --all-targets, and cargo test --workspace. Warnings are errors.

  6. 06

    Open a pull request against main. Describe what changed and why.

By contributing, you agree that your work is released under the project’s GPL-3.0-or-later licence. Please do not include anything you do not have the right to share: employer data, templates or documents, or text, tables and figures from paid standards.

Code of conduct

Be courteous and assume good faith. The project follows the Contributor Covenant. To report a problem, email contact@openengineering.uk.

Contact

Email contact@openengineering.uk. A mailing list for release news will follow after launch.