Architecture
Nice Code keeps the review path small and explicit. Rust owns discovery, parsing, rules, reports, and exit decisions. Node.js runs the user-facing launcher; Bun supports development, testing, and TypeScript utilities.
mermaid
flowchart LR
Guidance[Sources and patterns] --> Engine[Rust analysis engine]
Project[Target project] --> Engine
Engine --> Findings[Deterministic findings]
Engine --> Native[Native project tools]
Native --> Reports[Report and exit decision]
Findings --> Reports
Launcher[Node-compatible launcher] --> Engine
Reports --> Text[Human terminal output]
Reports --> Agent[Agent format / JSON]
Reports --> Sarif[SARIF for CI]The review path is:
- Public guidance is recorded in the source registry.
- Adapted principles become independent patterns.
- Lightweight checks cover gaps that local tools do not already own.
- In
--cimode, the engine runs available native project tools and retains their status. - Results are consumed locally, by a commit hook, by an agent, or in CI.
The checker detects the project ecosystem and scans changed files by default. Full scans, baselines, and audits are deliberate operations.