Developer Guide
Technical documentation for contributors and engineers extending HyperbyteDB.
Contents
| # | Topic | Description |
| 1 | Architecture | Hexagonal design, components, data flow |
| 2 | System architecture | Module layout, storage, services |
| 3 | Development setup | Prerequisites, build, run, Compose, kind |
| 4 | Internals | |
| Core modules | Source tree guide |
| Key design decisions | Write path, read path, compaction, replication |
| Replication design | Wire protocol, sync quorum, hinted handoff |
| Extension points | Adding statements, services, endpoints |
| 5 | Coding standards | Errors, async, naming, metrics |
| 6 | Testing | Suites, running tests, CI |
| 7 | Building & CI | Pipeline, Docker, releases |
| 8 | Contributing | PR process and review checklist |
Quick reference
| Task | Command |
| Build (debug) | cargo build |
| Build (release) | cargo build --release |
| Run server | cargo run -- serve |
| All tests | cargo test |
| Unit tests | cargo test --lib |
| Integration tests | cargo test --test '*' |
| Format | cargo fmt --all --check |
| Lint | cargo clippy --all-targets -- -D warnings |
| All benchmarks | cargo bench or ./scripts/bench-all.sh |
| Full stack | docker compose up --build -d |
| kind cluster | ./deploy/kind/setup.sh |