Skip to content

Code conventions ​

Technical rules of the project: how code is written. The business what lives in domain, the why of choices in ADRs.

Almost everything here is checked by ESLint (eslint/). When a rule is automatic, the page names the rule: when in doubt, the configuration wins.

PageContent
architecture.mdlayers, functional core / imperative shell
files.mdone export per file, file names, folders
functions.md@kind, size limits, immutability, explicit inputs, long procedures
naming.mdcasing, constants, booleans, names per kind
imports.mdindex.ts per folder, canonical paths, import type, cycles, boundaries
documentation.mdmandatory TSDoc, tag order, @see and references
typescript.mdcompiler options, TypeScript / ESLint split
formatting.mdEditorConfig, Prettier, blank lines, format on save
lint.mdlayout of eslint/, adding or changing a rule, custom rules
testing.mdVitest, hand-computed expected values
writing.mdhow documentation is written: page types, austere API reference, style
audit.mdchecklist of the feature audit: mathematics, sources, provenance, duplicates, consistency

Language ​

English everywhere: code, comments, TSDoc, commit messages, documentation, lint messages. The only French left is the glossary's French column (the working vocabulary of the target users).

Definition of done ​

In AGENTS.md (Definition of done): npm run fix, npm run check:all green, documentation up to date, a summary in French shaped as in writing.