Contributing
We welcome contributions of all kinds — bug fixes, new features, documentation improvements, and test coverage.Getting Started
1
Fork and clone
Fork the repository on GitHub, then clone your fork locally.
2
Set up your environment
Follow the Development Setup guide to install dependencies and configure your local environment.
3
Create a branch
Create a feature branch from
main:4
Make changes and test
Write your code, then run the test suite. See the Testing Guide for details.
5
Submit a pull request
Push your branch and open a PR against
main.Branch Naming
Commit Messages
Use concise, imperative-mood messages:Code Style
Rust
- Run
cargo fmtbefore committing - Run
cargo clippyand resolve all warnings - Follow existing patterns in the codebase — when in doubt, look at neighboring code
TypeScript (Dashboard)
- Run
pnpm lintin thedashboard/directory - Use the existing SWR +
fetchAPI()patterns for data fetching
Pull Request Guidelines
- Keep PRs focused — one logical change per PR
- Include a clear description of what changed and why
- Add or update tests for any behavior changes
- If your change affects the API surface, update the relevant documentation
Reporting Bugs
Open a GitHub issue with:- Steps to reproduce
- Expected vs actual behavior
- Memorose version and environment details (OS, Rust version, LLM provider)
Documentation Contributions
Documentation lives in thememorose-docs/ repository, built with Mintlify.
http://localhost:3000.
