Developer guide
The developer guide explains how to change Ferrex with confidence. It connects architecture decisions to the commands and files that keep the Rust server, desktop player, Android clients, and generated contracts consistent.
Core developer pages
Section titled “Core developer pages”| Page | Use it for |
|---|---|
| Architecture | Workspace layout, server/player/core responsibilities, data flow, and security/deployment notes. |
| Phase 1 intelligence foundation | Backend-only intelligence read models, bounded DTO contracts, and audit storage for future LLM features. |
| Player dependency boundaries | Crate layering rules, compatibility shims, and the player boundary guard. |
| UI testing workflow | Deterministic screenshots, .ice replay, visual QA matrices, and renderer troubleshooting. |
| SQLx dynamic query policy and allowlist | Compile-checked SQLx policy, reviewed dynamic-query exceptions, and guard commands. |
| Disposable SQLx PostgreSQL workflow | Per-worktree PostgreSQL setup for migrations and SQLx offline metadata updates. |
Related canonical references
Section titled “Related canonical references”- Contributing guide remains the canonical GitHub-facing contribution document.
- Crate README inventory links package-facing READMEs without duplicating them in the docs site.
- Mobile device-auth FlatBuffers contract captures the current generated-contract boundary for mobile clients.