Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
sanity-io avatar

Sanity Best Practices

  • 16.6k installs
  • 171 repo stars
  • Updated July 29, 2026
  • sanity-io/agent-toolkit

Comprehensive best practices guide for Sanity development including schema design, GROQ queries, framework integrations, Visual Editing, localization, migrations, and content automation.

About

Sanity Best Practices is a comprehensive reference guide covering schema design, GROQ query patterns, TypeGen configuration, Visual Editing setup, image optimization, Portable Text rendering, and framework integrations (Next.js, Nuxt, Astro, Remix, SvelteKit, Angular, Hydrogen). Developers use it when building Sanity-powered applications, setting up new projects, optimizing content modeling, or implementing event-driven content automation via Sanity Functions. Key workflows include designing reference relationships, configuring Studio structure, establishing localization patterns, performing content migrations, and integrating Sanity with frontend frameworks using established patterns and decision matrices.

  • Model relationships with reference fields resolved via GROQ lookups or source-key patterns
  • Framework integration guides for Next.js, Nuxt, Astro, Remix, SvelteKit, Angular, Hydrogen
  • GROQ query optimization, TypeGen type safety, and Visual Editing with Stega overlays
  • Localization patterns (field-level vs document-level) and content migration strategies
  • Sanity Functions and Blueprints for event-driven content automation and infrastructure-as-code

Sanity Best Practices by the numbers

  • 16,572 all-time installs (skills.sh)
  • +1,571 installs in the week ending Aug 2, 2026 (Skillselion tracking)
  • Ranked #30 of 1,879 Documentation skills by installs in the Skillselion catalog
  • Security screen: MEDIUM risk (skills.sh audit)
  • Data as of Aug 2, 2026 (Skillselion catalog sync)
At a glance

sanity-best-practices capabilities & compatibility

Capabilities
schema design patterns and validation · groq query optimization and type safety · visual editing and live preview setup · framework specific integration guides · content modeling with references and relationshi · localization and migration strategies · sanity functions and blueprints for automation
Works with
github · vercel
Use cases
api development · database · documentation · refactoring
Platforms
macOS · Windows · Linux · WSL
Runs
Remote server
Pricing
Free
npx skills add https://github.com/sanity-io/agent-toolkit --skill sanity-best-practices

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs16.6k
repo stars171
Security audit2 / 3 scanners passed
Last updatedJuly 29, 2026
Repositorysanity-io/agent-toolkit

What it does

Reference best practices for Sanity schema design, GROQ queries, framework integrations, and content workflows.

Who is it for?

Developers building Sanity-powered applications, integrating Sanity with Next.js/Nuxt/Astro/Remix/SvelteKit/Angular/Hydrogen, optimizing GROQ queries, designing content schemas, implementing Visual Editing.

Skip if: Designers working purely in Sanity Studio UI, non-technical content editors, projects not using Sanity as headless CMS.

When should I use this skill?

Setting up new Sanity projects, onboarding to Sanity, integrating frontend frameworks, writing GROQ queries, designing content schemas, implementing Visual Editing, configuring TypeGen, setting up localization, performin

What you get

Developers can efficiently set up Sanity projects, design schemas following relationship patterns, optimize GROQ queries, integrate with frontend frameworks, and automate content workflows.

  • Sanity client service configuration
  • Portable Text rendering setup

By the numbers

  • Covers 7+ framework integrations: Next.js, Nuxt, Astro, Remix, SvelteKit, Angular, Hydrogen
  • Includes 12+ topic guides: groq, schema, visual-editing, page-builder, portable-text, image, studio-structure, typegen,
  • Supports content migration from HTML via @portabletext/block-tools

Files

SKILL.mdMarkdownGitHub ↗

Sanity Best Practices

Comprehensive best practices and integration guides for Sanity development, maintained by Sanity. Use the quick reference below to load only the one or two topic files that match the task.

When to Apply

Reference these guidelines when:

  • Setting up a new Sanity project or onboarding
  • Integrating Sanity with a frontend framework (Next.js, Nuxt, Astro, Remix, SvelteKit, Hydrogen)
  • Writing GROQ queries or optimizing performance
  • Designing content schemas
  • Implementing Visual Editing and live preview
  • Working with images, Portable Text, or page builders
  • Configuring Sanity Studio structure
  • Setting up TypeGen for type safety
  • Implementing localization
  • Migrating content from other systems
  • Building custom apps with the Sanity App SDK
  • Managing infrastructure with Blueprints
  • Automating content workflows with Sanity Functions

Global Rules

  • Let Sanity generate _id values for ordinary documents. Do not create deterministic UUIDs, slug-derived IDs, or legacy-system IDs when creating documents.
  • Model relationships with reference fields, then resolve related documents with GROQ lookups, source-key fields, or returned _id values from created documents.
  • Use explicit document IDs mainly for singleton documents controlled by Studio Structure, including localized singletons such as homePage-en.

Quick Reference

Integration Guides

  • get-started - Interactive onboarding for new Sanity projects
  • nextjs - Next.js App Router, Live Content API, standalone Studio
  • nuxt - Nuxt integration with @nuxtjs/sanity
  • angular - Angular integration with @sanity/client, signals, resource API
  • astro - Astro integration with @sanity/astro
  • remix - React Router / Remix integration
  • svelte - SvelteKit integration with @sanity/svelte-loader
  • hydrogen - Shopify Hydrogen with Sanity
  • project-structure - Standalone Studio and monorepo patterns
  • app-sdk - Custom applications with Sanity App SDK
  • blueprints - Infrastructure as Code with Sanity Blueprints
  • functions - Automating content workflows with Sanity Functions

Topic Guides

  • groq - GROQ query patterns, type safety, performance optimization
  • schema - Schema design, field definitions, validation, deprecation patterns
  • visual-editing - Presentation Tool, Stega, overlays, live preview
  • page-builder - Page Builder arrays, block components, live editing
  • portable-text - Rich text rendering and custom components
  • image - Image schema, URL builder, hotspots, LQIP, Next.js Image
  • studio-structure - Desk structure, singletons, navigation
  • typegen - TypeGen configuration, workflow, type utilities
  • seo - Metadata, sitemaps, Open Graph, JSON-LD
  • localization - i18n patterns, document vs field-level, locale management
  • migration - Content import overview (see also migration-html-import)
  • migration-html-import - HTML to Portable Text with @portabletext/block-tools

How to Use

Start with the single framework or topic guide that best matches the request, then read additional references only when the task crosses concerns. Use these reference files for detailed explanations and code examples:

references/groq.md
references/schema.md
references/nextjs.md

Each reference file contains:

  • Comprehensive topic or integration coverage
  • Incorrect and correct code examples
  • Decision matrices and workflow guidance
  • Framework-specific patterns where applicable

Related skills

How it compares

Use sanity-best-practices for opinionated Angular-to-Sanity wiring instead of generic CMS tutorials without signals, Portable Text, or Visual Editing detail.

FAQ

Should I create deterministic UUIDs or slug-derived IDs for Sanity documents?

No - let Sanity generate _id values for ordinary documents. Use explicit document IDs only for singleton documents controlled by Studio Structure, such as homePage-en for localized singletons.

How should I model relationships between documents in Sanity?

Use reference fields to link documents, then resolve related documents with GROQ lookups, source-key fields, or returned _id values from created documents.

Which framework integration guides does this reference cover?

Next.js (App Router, Live Content API, standalone Studio), Nuxt, Astro, Remix, SvelteKit, Angular, Shopify Hydrogen, plus custom apps with App SDK.

Is Sanity Best Practices safe to install?

skills.sh reports 2 of 3 security scanners passed. Review the Security Audits panel on this page before installing in production.

Documentationbackendintegrationsdocs

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.