Docs-handleiding
Hoe de kennisbasis en de collecties werken.
Indeling
Written 2026-07-11.
src/ collections.config.ts (het indexbestand: defineConfig +
defineCollection) en collections.test.ts
content/
├── integraties/ de externe koppelingen van KSD met links naar hun API-docs
└── readme/ secties van deze READMEElk document in apps/docs/ (INTEGRATIES.md en deze README) is GEGENEREERD
uit de content-map met dezelfde naam. Bewerk de .md-output nooit met de
hand; wijzig de entries in content/ en herbouw. Elke entry draagt een
geschreven- en bijgewerkt-datum, zodat later te verifiëren is of een stuk
nog klopt. Het entry-formaat per collectie staat in de README van de
betreffende content-map. De generieke engine (frontmatter, huisstijlvalidatie,
de --json-envelope en de factories) zit in het gedeelde package
@beltane/collections; deze app declareert alleen haar eigen collecties.
Gebruik
Written 2026-07-11.
Vanuit apps/docs/:
bun run docs build [collectie] [--json] # gegenereerde documenten bouwen
bun run docs check [--json] # validatie + review-due
bun run docs list <collectie> [--where veld=waarde] [--json] # entries tonen/filteren
bun run docs get <collectie> <id> [--json] # één entry: frontmatter + body
bun run docs add <collectie> --veld waarde ... --body "..." [--json]
bun run docs touch <collectie> <bestand> [--json] # bijgewerkt-datum op vandaag
bun run docs schema [--json] # zelf-beschrijvend contract
bun run docs help [collectie] # veldenoverzicht
bun run test # CLI-integratietestsElk commando kent een --json-modus met één vaste envelope
{ ok, command, data, warnings, errors, meta }. docs schema --json geeft
het volledige contract (collecties, velden, exit-codes), zodat een agent de
CLI kan bedienen zonder de source te lezen.
Nieuwe collecties
Written 2026-07-11.
Nieuwe collecties declareer je in src/collections.config.ts met
defineCollection (soorten: grouped, document of custom) en een eigen
map onder content/ met een README die het entry-formaat beschrijft. Kandidaat
voor een volgende stap: de campagne-briefs als collectie, zodra de
campagne-registry (apps/campaigns/src/registry.ts) en de live stand gesynct
zijn; de registry blijft de bron van waarheid voor status en budget.
Huisstijl: Nederlands, u-vorm richting klanten en wij-vorm intern, geen
gedachtestreepjes (de build weigert entries met een em/en-dash, met
regelnummer). Engelse veldnamen in de front matter waar de engine ze kent;
de datumsleutels zijn hier Nederlands (geschreven/bijgewerkt) via
dateKeys in de config.