content-modeling-best-practices
Content Modeling Best Practices
Principles for designing structured content that's flexible, reusable, and maintainable. These concepts apply to any headless CMS but include Sanity-specific implementation notes.
When to Apply
Reference these guidelines when:
- Starting a new project and designing the content model
- Evaluating whether content should be structured or free-form
- Deciding between references and embedded content
- Planning for multi-channel content delivery
- Refactoring existing content structures
Core Principles
- Content is data, not pages — Structure content for meaning, not presentation
- Single source of truth — Avoid content duplication
- Future-proof — Design for channels that don't exist yet
- Editor-centric — Optimize for the people creating content
Resources
Start with the resource that matches the modeling decision in front of you, instead of loading every topic at once. See resources/ for detailed guidance on specific topics:
resources/separation-of-concerns.md— Separating content from presentationresources/reference-vs-embedding.md— When to use references vs embedded objectsresources/content-reuse.md— Content reuse patterns and the reuse spectrumresources/taxonomy-classification.md— Flat, hierarchical, and faceted classification
More from display-design-studio/skills
tailwind
>-
23vite
Vite build tool configuration, plugin API, SSR, and Vite 8 Rolldown migration. Use when working with Vite projects, vite.config.ts, Vite plugins, or building libraries/SSR apps with Vite.
22shopify-development
|
17nuxt-sanity
>-
16vue
Vue 3 Composition API, script setup macros, reactivity system, and built-in components. Use when writing Vue SFCs, defineProps/defineEmits/defineModel, watchers, or using Transition/Teleport/Suspense/KeepAlive.
14nuxt
Nuxt full-stack Vue framework with SSR, auto-imports, and file-based routing. Use when working with Nuxt apps, server routes, useFetch, middleware, or hybrid rendering.
13