Code Style
With your development environment set up, follow these conventions when writing code for Quira.
Rust
- Format with
rustfmt(enforced in CI) - Lint with
clippyat thepedanticlevel - Prefer immutable patterns Euse
letoverlet mutwhere possible - Functions should be under 50 lines; files under 800 lines
- Avoid
unwrap()in production code Euse?operator or explicit error handling
TypeScript
- Format with
Prettier, lint withESLint - Strict TypeScript Eno
anytypes, strict null checks enabled - Immutable-first Eprefer
const,readonly, and spread operators over mutation - No deep nesting beyond 4 levels
Commit conventions
All commits follow the Conventional Commits format:
feat: add Space color picker
fix: prevent duplicate nodes for redirected URLs
refactor: extract graph renderer into separate module
docs: update NL Query API reference
test: add edge weight calculation tests
perf: optimize FTS5 index rebuild on large graphs Was this page helpful?