
sanity-best-practices
热门Sanity 开发最佳实践,涵盖 schema 设计、GROQ 查询、TypeGen、可视化编辑、图片、Portable Text、Studio 结构、本地化、迁移、Sanity Functions、Blueprints 以及框架集成(如 Next.js、Nuxt、Astro、Remix、SvelteKit、Angular、Hydrogen 和 App SDK)。在处理 Sanity schema、defineType 或 defineField、GROQ 或 defineQuery、内容建模、Presentation 或预览设置、基于 Sanity 的前端集成、Sanity Functions、documentEventHandler、defineDocumentFunction、defineMediaLibraryAssetFunction、@sanity/functions、@sanity/blueprints、sanity.blueprint.ts、事件驱动的内容自动化,或审查和修复 Sanity 代码库时,请使用此技能。
Sanity 开发最佳实践,涵盖 schema 设计、GROQ 查询、TypeGen、可视化编辑、图片、Portable Text、Studio 结构、本地化、迁移、Sanity Functions、Blueprints 以及框架集成(如 Next.js、Nuxt、Astro、Remix、SvelteKit、Angular、Hydrogen 和 App SDK)。在处理 Sanity schema、defineType 或 defineField、GROQ 或 defineQuery、内容建模、Presentation 或预览设置、基于 Sanity 的前端集成、Sanity Functions、documentEventHandler、defineDocumentFunction、defineMediaLibraryAssetFunction、@sanity/functions、@sanity/blueprints、sanity.blueprint.ts、事件驱动的内容自动化,或审查和修复 Sanity 代码库时,请使用此技能。
Sanity 最佳实践
由 Sanity 维护的全面最佳实践和集成指南。使用下面的快速参考,仅加载与任务匹配的一两个主题文件。
何时应用
在以下情况下参考这些指南:
- 设置新的 Sanity 项目或入职
- 将 Sanity 与前端框架集成(Next.js、Nuxt、Astro、Remix、SvelteKit、Hydrogen)
- 编写 GROQ 查询或优化性能
- 设计内容 schema
- 实现可视化编辑和实时预览
- 处理图片、Portable Text 或页面构建器
- 配置 Sanity Studio 结构
- 设置 TypeGen 以实现类型安全
- 实现本地化
- 从其他系统迁移内容
- 使用 Sanity App SDK 构建自定义应用
- 使用 Blueprints 管理基础设施
- 使用 Sanity Functions 自动化内容工作流
全局规则
- 让 Sanity 为普通文档生成
_id值。创建文档时,不要创建确定性 UUID、基于 slug 的 ID 或遗留系统 ID。 - 使用
reference字段建模关系,然后通过 GROQ 查找、源键字段或创建文档返回的_id值来解析相关文档。 - 显式文档 ID 主要用于由 Studio Structure 控制的单例文档,包括本地化的单例,如
homePage-en。
快速参考
集成指南
get-started- 新 Sanity 项目的交互式入门nextjs- Next.js App Router、Live Content API、独立 Studionuxt- 使用 @nuxtjs/sanity 的 Nuxt 集成angular- 使用 @sanity/client、signals、resource API 的 Angular 集成astro- 使用 @sanity/astro 的 Astro 集成remix- React Router / Remix 集成svelte- 使用 @sanity/svelte-loader 的 SvelteKit 集成hydrogen- Shopify Hydrogen 与 Sanityproject-structure- 独立 Studio 和 monorepo 模式app-sdk- 使用 Sanity App SDK 的自定义应用blueprints- 基础设施即代码:blueprint 文件、堆栈、计划/部署工作流、错误恢复、CI 部署functions- 使用 Sanity Functions 自动化内容工作流
主题指南
groq- GROQ 查询模式、类型安全、性能优化schema- Schema 设计、字段定义、验证、弃用模式visual-editing- Presentation 工具、Stega、叠加层、实时预览page-builder- 页面构建器数组、块组件、实时编辑portable-text- 富文本渲染和自定义组件image- 图片 schema、URL 构建器、热点、LQIP、Next.js Imagestudio-structure- Desk 结构、单例、导航typegen- TypeGen 配置、工作流、类型工具seo- 元数据、站点地图、Open Graph、JSON-LDlocalization- i18n 模式、文档级与字段级、语言环境管理migration- 内容导入概述(另见migration-html-import)migration-html-import- 使用 @portabletext/block-tools 将 HTML 转换为 Portable Text
使用方法
从最匹配需求的单个框架或主题指南开始,仅在任务涉及多个方面时阅读其他参考资料。使用这些参考文件获取详细解释和代码示例:
references/groq.md
references/schema.md
references/nextjs.md
每个参考文件包含:
- 全面的主题或集成覆盖
- 错误和正确的代码示例
- 决策矩阵和工作流指导
- 框架特定模式(如适用)





