Contributing to Wanaku
Thank you for your interest in contributing to Wanaku. This page directs contributors to the development guides and the minimum validation workflow.
Getting Started
Use Getting Started to run Wanaku and verify an MCP request. It is an operator quick start, not a contributor setup guide.
For implementation work, read the guide that matches the area you plan to change:
Quick Links
- Architecture Overview: filter order, request flow, registries, routing, and feature integration.
- Feature Development: the
Featuretrait and a custom feature tutorial. - Configuration Reference: environment variables, pipeline configuration, and Wanaku bootstrap configuration.
- Admin UI Development: React development, generated API clients, tests, and UI conventions.
- Plugin Development: the implemented Web UI plugin contract and local test workflow.
- Evaluator Engine: evaluator configuration and JavaScript or Rust action scripts.
Contributor Workflow
Build the workspace:
bashcargo buildRun the Rust tests:
bashcargo testCheck formatting:
bashcargo fmt --checkRun Clippy:
bashcargo clippy --all-targets --all-features -- -D warningsBuild WASM evaluators
bashcargo build -p wanaku-feature-evaluator
Add meaningful tests for new behavior. Update the relevant documentation when you add or change a feature.
For admin UI changes, follow the E2E workflow in Admin UI Development. At minimum, cover the page title, add flow, and delete flow when the page supports those actions.
Before you submit a pull request, review the diff for unrelated changes. Keep related corrections in the existing commit when the project maintainers ask for amended commits.
Code of Conduct
We are committed to providing a welcoming and inclusive environment. Please be respectful and professional in all interactions.
Questions?
If you have questions about contributing, please open an issue on GitHub or join our community discussions.
License
By contributing to Wanaku, you agree that your contributions will be licensed under the Apache 2.0 License.