Contributing
TaiDB is intentionally small. Contributions should keep the project easy to build, easy to audit, and easy to embed.
Good first contributions
Section titled “Good first contributions”- Documentation fixes.
- More examples.
- CLI help improvements.
- Reproducible benchmark scripts.
- Tests for corruption, recovery, import, and compaction behavior.
Before changing behavior
Section titled “Before changing behavior”Run:
make checkmake smokeFor native FFI changes:
cargo build --release --features native-ffimake native-smokeFor packaging changes:
cargo publish --dry-run --allow-dirtyDocs development
Section titled “Docs development”The docs site lives in docs/.
cd docsnpm installnpm run devThe docs require Node.js >=22.12.0.
Repository hygiene
Section titled “Repository hygiene”Do not commit:
.envfiles- encryption keys
- generated databases
- benchmark output
- build artifacts
- local agent state
- dependency folders
Design principles
Section titled “Design principles”- Prefer Rust-first APIs.
- Keep source-only examples inspectable.
- Avoid adding platform packaging until the maintenance cost is justified.
- Back performance claims with reproducible scripts.
- Keep data safety work ahead of broad marketing claims.