If I'm not getting the 'Preview' option on sanity studio that probably means that I haven't setup previewmode correctly on my project right?
Yes, you're on the right track! If you're not seeing a 'Preview' option in Sanity Studio, it likely means the Presentation Tool hasn't been configured yet.
The Presentation Tool is a plugin that needs to be explicitly added to your sanity.config.ts file. Here's what you need to do:
1. Make sure you're running Studio v3.40.0 or later:
npm install sanity@latest2. Add the Presentation Tool plugin to your config:
import { presentationTool } from 'sanity/presentation'
export default defineConfig({
// ... other config settings
plugins: [
presentationTool({
previewUrl: {
previewMode: {
enable: '/api/draft-mode/enable',
},
},
}),
],
})3. Set up your frontend to handle preview mode: You'll also need to implement Visual Editing support in your frontend application. This involves:
- Creating an API route that enables draft mode (like the
/api/draft-mode/enableendpoint referenced above) - Configuring your app to fetch and display draft content
- Setting up proper authentication tokens
The specific implementation depends on your framework. Sanity has guides for Next.js, Nuxt.js, SvelteKit, and React Router/Remix.
Once configured, you'll see the Presentation Tool option appear in your Studio's top toolbar, giving you that live preview with click-to-edit functionality!
Sanity β Build the way you think, not the way your CMS thinks
Sanity is the developer-first content operating system that gives you complete control. Schema-as-code, GROQ queries, and real-time APIs mean no more workarounds or waiting for deployments. Free to start, scale as you grow.