What problem does it solve?
Defining Headless CMS content models through a UI is slow and hard to version-control. This Skill lets you create, modify, and understand Webiny content models entirely in TypeScript code using the ModelFactory pattern, with correct field types, renderers, validators, and layouts.
Core Features & Use Cases
- ModelFactory Builder API: Define models with fields, layouts, validators, API names, tags, and singleton behavior, then register them as extensions in webiny.config.tsx.
- Field Types & Renderers: Covers text, longText, richText, number, boolean, datetime, asset, file, ref, object, and dynamicZone fields, including the singular-vs-plural renderer rule for .list() fields and renderer settings.
- Advanced Modeling: Nested layouts inside object and dynamicZone fields, layout-only UI fields (separators, alerts, tabs), field rules for access control and conditional visibility, and correct SDK fields projection syntax for ref vs object sub-fields.
- Use Case: A developer needs a Product model with a reference to an Author model, a dynamic zone of content blocks, and SEO fields hidden from non-marketing teams — this Skill produces the complete, correctly-typed definition.
Quick Start
Create a Webiny content model called Product with a required name field, a slug, a rich text description, and a reference to an Author model, registered as an API extension.