SaaSActive

Sanity Studio

Open-source React-based content studio that lets teams customize how documents are organized and edited.

Open source page

Field note

What it does

Sanity Studio is a customizable content editing environment. The Structure Builder API reorganizes flows and documents within it.

Capabilities

Available capabilities

Tags

Tags

Ways to use it

Ways to use it

sdk

javascript / https://www.sanity.io/docs/ai/get-started

sdk

javascript / https://www.sanity.io/docs/portable-text

sdk

javascript / https://www.sanity.io/docs/studio/structure-builder-introduction

sdk

JavaScript / https://www.sanity.io/docs/studio/intro-to-custom-studio-components

npm

TypeScript / @sanity/presets

npm

Not filed / Not filed

npm

Not filed / sanity

cli

Not filed / @sanity/cli

cli

Not filed / sanity

Product features

Product features

AI Assist

Installable plugin for Sanity Studio.

Annotations

Add structured data to text, such as internal links to references.

Auto-updates config

Enabled via the deployment.autoUpdates option in sanity.cli.ts.

Base path

Specify the base path when self-hosting the studio.

Block Content

Rich text and custom block content that renders in any front end.

Comment Reactions

Leave emoji reactions, copy direct links, edit, or delete comments.

Comments

Collaboration with comments, @mentions, and resolve.

Conditional fields

Show, hide, or make fields read-only based on document values or user roles.

Content releases

Organize and schedule updates across multiple documents.

Core components

Create a task

Create tasks with due dates, assignees, and optional target documents.

Custom blocks

Embed images, videos, code snippets, or any custom content type within text.

Custom component pane

Implement a pane using a custom React component with configurable options.

Custom components

Introduction to custom components for Sanity Studio.

Dashboard

Hub of all your content operations.

defineConfig

Exported function taking a single workspace config object or an array of config objects.

Disable drafts

Set document.drafts.enabled to false so edits only happen in releases.

Disable releases

Turn off Content Releases in the studio configuration file.

Document config

Configure document actions and badges, productionUrl previews, and new document options.

Document list pane

Displays a live-updating, GROQ-filtered list of documents with infinite scrolling.

Document pane

Holds a document's values and states (published, draft, historical, displayed).

Document types

Collections of schema types used to build standalone pieces of content.

Filtering content

Follow the guided steps

Form components

Customize field, input, item, and preview rendering via the form.components property.

Form config

Configure asset sources for files and images and override default form component rendering.

How it fits together

Install the Sanity Context skill

MCP endpoint

MCP endpoint segments

--no-build flag

Skips the build and deploys the existing dist/ directory.

Portable Text

Structured rich text format storing content as an array of blocks.

Portable Text Comments

Attach comments to specific sentences or words within Portable Text.

Prerequisites

Presentation preview

Preview Content Releases in Presentation with Loaders and API v2025-02-19.

Prompt your coding agent to run the setup skill

Property callback functions

Many config properties accept callbacks invoked with previous value and context.

Release count limit

Set releases.limit in studio config to cap active releases per workspace.

renderDefault callback

Each component declaration receives renderDefault to defer to default Studio rendering.

Resolve Comments

Mark comments as resolved; resolved comments move to a separate list.

Resolve tasks

Mark tasks as done; resolved tasks remain available under Done.

Safe downgrades

A deployed Studio never runs a version predating its deploy version.

Sanity Context

Sanity Context document

sanity deploy

One CLI command builds and deploys the studio to a .sanity.studio URL.

Schema property

Declare schema types via a static array or callback; templates set initial values.

Schema types

Attributes used on a form to make a document, mapping to schema.types.

Serialization

Serialize Portable Text to HTML, React, Vue, Markdown, or custom serializers.

Structure builder

Customize document lists, views, menus, and more.

Structure Builder API

Chainable classes and methods to express how documents are organized in the Studio.

Studio components

Replace layout, navbar, and toolMenu via the studio.components configuration property.

Supported groqFilter operators

Comment on tasks

Attach comment threads to tasks and @mention team members.

Tasks

Assign, comment on, and resolve tasks for content creation.

Tasks inbox

Located in the top-right corner of Studio, showing assigned, subscribed, and open tasks.

Tools

Full-page components that take over the studio interface and appear in the nav bar.

Translation Overrides

Override translated strings using defineLocaleResourceBundle and i18n.bundles.

UI Localization

Install language plugins to change the Sanity Studio interface language.

sanity undeploy

Removes the studio from the web and releases the hostname asynchronously.

Update channels

Latest, Next, Stable, or pin a specific version.

Validation

Add validation rules to fields to keep content consistent.

Visual Editing

Shareable live previews, click-to-edit, and drag and drop.