Project Conventions (Canopy)
On this page
This page is the entry point the universal Coding Conventions standard refers to as "the project’s own project-conventions page": where Canopy records the project-specific conventions (framework patterns, database, styling, auth, accessibility) that overlay — and never duplicate — the universal standards.
It is a thin index. The conventions themselves live on the pages below; this hub only points at them (context budget is finite — point, don’t duplicate).
Coding & framework patterns
-
Coding Conventions (Canopy) — the project overlay: Askama quirks, the 201-Created create-endpoint override, secure-by-default
CANOPY_ENV, the Axum 0.8 / sqlx patterns, event-bus / FTI / session / secrets / composition conventions, the pre-commit Q1–Q8 checklist, and the ADR-030 quality-budgets gate. -
Coding Conventions (universal standard) — the synced Rust core: error philosophy, concurrency, formatting, SPDX, dependency management, the
[workspace.lints]table.
Database & migrations
-
ADR-001: Program Service Isolation — each service owns its own PostgreSQL database.
-
Database Migrations — the day-to-day migration workflow.
Styling & accessibility
-
Orchard Design System — the worker-portal visual vocabulary (CSP-safe htmx + Alpine, WCAG 2.1 AA affordances).
-
ADR-021 / ADR-022 — the composability runtime the styling conventions feed.
Testing
-
Testing (Canopy) — the canopy-test-lib primitives, seed-harness replay contract, and invariant gates.
Configuration
-
Configuration Reference — the layered config + secrets workflow.
Delivery & workflow
-
Contributor Workflow Conventions — GitLab scoped labels, the CI-broken force-merge procedure, phased issues, and agent delivery working agreements.
Architecture decisions
-
Architecture Overview and the ADR index — every architectural choice with a viable alternative is recorded as an ADR.