v5.9.3 24 February 2026 Improvement
API Documentation Complete & Docs Site Rendering Fixes
API Documentation Guides — Full Coverage
Completed the remaining four guide pages for docs.speybooks.com, bringing the static documentation to 23 pages covering the entire API surface.
- Invoices & Quotes — full invoice lifecycle state machine, quote-to-invoice conversion, payment recording, PDF generation, and email delivery. Covers both
vatTreatmentenums (transaction lines vs categorisation endpoint). - Contacts & Directors — contact types with inclusive filtering, metadata merge semantics, safe deletion behaviour, director shareholding, connected persons for S455 aggregation, and the resign workflow.
- Transactions & Journals — the absolute balance constraint, VAT annotation system (tax reporting metadata, not balancing lines), draft/posted lifecycle, bank import categorisation, and the account ledger.
- Opening Balances — the OBCE 5-tier mapping strategy, balance proof with rounding injection, clearing mode for outstanding document imports, the singleton constraint, and the triple confirmation gate.
All guides validated against source code and cross-referenced with endpoint schemas.
Docs Site Rendering Fixes
Resolved two visual flicker issues on the documentation site.
- Light mode FOUC eliminated — moved theme initialisation from the external
enhance.jsinto an inline<head>script that runs before CSS parse. The browser now applies the correct colour palette on the first frame. Also respects OSprefers-color-schemefor new visitors who have not toggled manually. - Sidebar jitter eliminated — added
@font-facedeclarations withfont-display: blockfor Inter and JetBrains Mono, matching the self-hosted font filenames. Added<link rel="preload">directives in the layout<head>so fonts download at the same priority as CSS. Addedoverflow-y: scrollonhtmlto prevent horizontal layout shift between pages of different lengths, and reservedmin-heighton the search container to prevent sidebar links jumping during initialisation.