Thanks for your interest in improving BoardOp. This is a small, single-maintainer project; issues, bug reports, and pull requests are all welcome.
- File an issue first for anything non-trivial. A quick discussion up front saves rework — especially for changes to the safety gates, the console/OSC contract, or the base rulesets.
- Say how you tested it. Describe what you ran and, where it applies, what the console actually reported. BoardOp is validated against real grandMA3 behavior, so a note that a command or plugin was confirmed on a desk or on onPC is genuinely useful review material.
- Don't hand-edit the base rulesets (
ma3_ruleset.txt,plugin_ruleset.txt,gui_ruleset.txt) or the harvested corpora undertools/tree/without saying so in the PR — they are verified against real console behavior and have their own review process. - Never commit secrets.
config.pyis gitignored; onlyconfig.example.pyis tracked.
BoardOp is released under the Functional Source License 1.1 (FSL-1.1-ALv2). Contributions are accepted under that same license — inbound matches outbound — including the automatic conversion to Apache 2.0 that takes effect two years after each release.
There is no CLA to sign. Instead, certify that you wrote the contribution, or that you otherwise have the right to submit it, by signing off your commits under the Developer Certificate of Origin:
git commit -s -m "your message"That appends a Signed-off-by: line using the name and email in your git config. You keep
the copyright to your own work.
The grandMA3 plugins under ma3_plugins/ are licensed under the more
permissive MIT License, separately from the rest of the
repository, because they are imported into showfiles that users share. Contributions to
that directory are accepted under MIT.
Open an issue — that's the best place for anything that isn't a code change yet.