Contributing¶
Thanks for helping shape Spikard! The fastest way to get started is to follow the existing Taskfile and language-specific READMEs.
Setup¶
This installs Rust, Python, Node, and Ruby dependencies plus pre-commit hooks.
Common Tasks¶
task build– build Rust core and bindingstask test– run all language test suitestask lint/task format– apply linters and formatterstask docs:serve– work on this documentation locally
Guidelines¶
- Keep behavior consistent across bindings; add fixture-driven tests when adding new features.
- Prefer contract-first changes: update schemas, generators, and ADRs where relevant.
- Run
cargo fmt,cargo clippy,ruff,biome, and language-specific tools before opening a PR.
For more detail, see the root CONTRIBUTING.md file and ADRs that cover design intent.