About Cuddler
Why we built Cuddler, how it works, and the schema model behind it.
Why Cuddler exists
Teams needed a reliable way to generate HTML from structured data without hidden formatting rules.
Cuddler separates that pipeline into two explicit schema contracts so producers and templates stay decoupled.
The Cuddler model
- Data schema first:
data.schema.jsonvalidates incoming JSON before rendering. - Template schema second:
template.schema.jsondecides rendering only; it does not change data validation. - Shared versioning: data and template schemas move together for a document type.
- Debuggable output: validation and render failures return structured diagnostics.
How it is used
- Build or collect JSON that matches the data schema (often via Codex skills and prompts).
- Validate with
validateData(data, dataSchema). - Render with
renderDocument(data, templateSchema, options). - Ship HTML and share failures quickly through trace/debug output.
Prompt and skill workflow
data.schema.prompt.txt is the source document used by a Codex skill.
Each new document type should keep prompt files, schema artifacts, and example JSON in the same folder under /schemas/*.
What to read next
Ready to build with Cuddler? Request onboarding or send us a message.