Christian Grøngaard joins the Code && Content podcast to walk through shipping a block editor, behavior state charts, and gherkins.
Go to The final boss of front-end: block editors
Prevent references to large files to reduce the chances of high bandwidth usage
Go to Schema validation rules to enforce maximum file size
Select project members and save their ID to a document
Go to User Select Input Official
(made by Sanity team) Sanity Studio is an incredibly flexible tool with near limitless customisation. Here's how I use it.
Go to An opinionated guide to Sanity Studio
Managing content for multiple websites? Discover the capabilities of multi-site CMSes, their benefits, and expert advice on picking the right one.
Go to Multi-Site CMS: Key Features and How To Choose The Right One Official
(made by Sanity team) It can be useful for testing plugins, front ends, or other integrations to have a Sanity Studio populated with fake content.
Go to How to generate massive amounts of demo content for Sanity
Visual Editing streamlines everyday content management with an intuitive, one-click path from website preview content to Studio.
Go to Visual Editing: give content teams a GPS for your CMS Official
(made by Sanity team) Setup "Live by Default" fetches and interactive live preview with Presentation in Sanity Studio
Go to Visual Editing with Next.js App Router and Sanity Studio Official
(made by Sanity team) Batteries-included website template for a content-editable, interactive live-preview enabled Remix website powered by Sanity Studio.
Go to Sanity Studio + Remix fully featured template
Summarise form progression by decorating the entire editing form for a document with a component loaded at the root level.
Go to Create a document form progress component
Object types use a preview property to display contextual information about an item when they are inside of an array; customizing the preview component can make them even more useful for content creators.
Go to Create richer array item previews
Save time going in-and-out of modals by moving some light interactivity to array items.
Go to Create interactive array items for featured elements
Make repetitive content creation tasks a breeze by supplying content creators with buttons to populate complex fields.
Go to Create an array input field with selectable templates
Delight your content creators with intelligent inputs for more complex data structures
Go to Create a time duration object field
Give content creators quick access to valid values by replacing the default number field input with a list of options.
Go to Create a survey rating number field input
Go beyond a plain radio list of inputs by giving authors more contextually useful buttons to select values from.
Go to Create a visual string selector field input
Take the guesswork out of creating fields with correct values and automate content creation for authors.
Go to Create a “coupon generator” string field input
A home screen for your multi-workspace Sanity Studio
Go to Workspace Home
In this guide, you’ll see how Sanity separates organizations, projects, datasets, and members by working through a hypothetical example of a growing company that can expand its content model as they grow – without needing a complete overhaul.
Go to How to implement Multi-tenancy with Sanity
Schema and Custom Input to indicate and rapidly author availability data
Go to Availability
Uses @sanity/asset-utils to validate an uploaded image by its ID
Go to Schema validation rules to enforce image size or file type
Store localised fields in an array to save on attributes
Go to Internationalized Array Official
(made by Sanity team) Associate arrays with hotspots on any image
Go to Hotspot array
Create common taxonomy schemas like Categories and Tags with parent/child relationships
Go to Creating a Parent/Child Taxonomy Official
(made by Sanity team) Create unique translations of a document based on its language, joined by a shared reference document
Go to Document Internationalization Official
(made by Sanity team) Combine Sanity's blazing-fast CDN with Remix's cached at the edge pages.
Go to How to build a Remix website with Sanity and Visual Editing
Sometimes the content you need to reference lives outside of Sanity
Go to Creating a custom input to display and save third party data Official
(made by Sanity team) Drag-and-drop Document Ordering without leaving the Editing surface
Go to Orderable Document List
Empower content editors to migrate Documents and Assets between Sanity Projects and Datasets from inside the Studio
Go to Cross Dataset Duplicator Send the contents of a Portable Text field to MonkeyLearn's API to extract insights with the power of Machine Learning!
Go to MonkeyLearn Pane Official
(made by Sanity team) Machine translations from Google Translate directly in your Sanity Studio
Go to Google Translate
Setup interactive live preview with Presentation in a Next.js pages router application
Go to Visual Editing with Next.js Pages Router and Sanity Studio
Get the best of both worlds. Tailwind-styled typography and Portable Text's markup-and-components structure.
Go to ProseableText: Combine Tailwind CSS Typography with Portable Text
Display any URL in a View Pane, along with helpful buttons to Copy the URL or open in a new tab.
Go to Iframe Pane
Run yoast.js analysis on your front end, refreshing as you edit your Document, from inside a View Pane.
Go to SEO Pane
Display the results of any GROQ Query inside a View Pane
Go to Documents Pane
Not all Unpublished Documents are created equal
Go to GROQ Query for new and unpublished Documents
Data modelling with dynamic data imports
Go to House Estate Agents
Get details of the currently logged in Sanity user
Go to useCurrentUser Custom React Hook An exploration of recipe data models for improved user experience
Go to Recipe Website Proof of Concept Writing Sanity Schema can get verbose and repetitive. Quick Fields is a helper function with sensible defaults to tidy up schema files.
Go to Quick Fields Helper Function Official
(made by Sanity team) Learn how to create a page builder from structured content that can withstand the test of time and redesigns.
Go to How to use structured content for page building