Developer reference
Coding and documentation standards
Preserve API ownership, financial semantics and useful public task documentation.
Use strict TypeScript, colocated Node tests and existing UI primitives. Keep components and services in their established owning layers.
Financial implementation
Browser components use API helpers. Server services own domain effects. Ledger creation uses the controlled double-entry RPC, balanced at stored precision per currency.
Use Africa/Cairo user-day semantics. Preserve actual settled currency and original-pricing evidence independently. Categories, matters and tags remain orthogonal. Gameyya money represents the user’s own contributions and receipt.
UI behavior
Show each figure with currency, period/date and meaning. Preserve loading, empty and unavailable states. Commands need pending protection, valid success receipts and a recovery path that avoids duplicate money.
Respect privacy concealment in portals and history restoration. Follow the approved token system and keyboard/reduced-motion behavior.
Public documentation
Write around the reader’s task. Include prerequisites, current controls, expected result and relevant recovery. Use explicitly fictional examples, never copied personal financial details. Label planned features rather than publishing placeholder controls.
Update navigation and internal links when a route changes. Verify endpoint methods and scopes against the registry, then build/search/browser check the published guide.
Change review
Use conventional commit subjects and logical change groups. Explain resulting behavior and validation. Keep app/docs dependency boundaries intact.
Read quality commands and evidence boundaries.