Modelling content
EngineersShape content with documents, folders, components and pages, and generate types from the model.
- Content model
Every piece of content in Quillet is a document with a key, a type, a body and five metadata fields, and folders hand their settings down through a document called _index.
- Components and the builder
A component is a JSON Schema stored as the document _schemas/<name> and built field by field in the dashboard, and every save of a document bound to it is checked against it.
- Pages
A page is a document bound to a component marked page: true, whose field roles tell the dashboard how to preview it and whose block list holds its sections.
- Inline and referenced components
A component reaches a page in one of two ways: inline, as a block whose fields are copied into the page, or by reference, as a pointer to a separate document that delivery puts in place when the page is read.
- Markdown and assets
A picture in a Markdown document is written as the file's delivery path, /d/v1/<project>/assets/<id>, and the CMS records that path on save so the file cannot be deleted while the document uses it.
- Generated types
Quillet writes one TypeScript declaration file per environment from its components, so the code that reads your content is compiled against the same shapes the CMS enforces on save.