Thanks for your interest in contributing to engraph.
git clone https://github.com/devwhodevs/engraph
cd engraph
cargo test --lib # 225 tests, no network requiredOpen an issue first. For anything beyond a typo fix, please open an issue to discuss what you'd like to change. This avoids wasted effort if the change doesn't fit the project direction.
- Fork the repo and create a branch from
main - Write tests for any new functionality
- Run the full check suite:
cargo fmt --check cargo clippy -- -D warnings cargo test --lib - Open a pull request with a clear description of what and why
The codebase is 20 Rust modules behind a lib crate. See CLAUDE.md for detailed architecture documentation — it's designed for AI-assisted development but serves as a thorough codebase guide for human contributors too.
Key modules:
store.rs— SQLite persistence (all tables, queries, migrations)indexer.rs— vault walking, chunking, embedding, index updatesserve.rs— MCP server with 13 toolswatcher.rs— file change detection and real-time re-indexingsearch.rs— 3-lane hybrid search orchestration
- Bug fixes with tests
- Performance improvements with benchmarks
- New MCP tools that expose existing functionality
- Documentation improvements
- Platform support (Windows, other architectures)
- Run
cargo fmtbefore committing - No clippy warnings (
cargo clippy -- -D warnings) - Prefer small, focused PRs over large changes
- Tests are expected for new functionality