A Sanity Studio plugin that adds AI-powered image generation and editing capabilities to image fields using Replicate's Flux Kontext Pro model.
- 🎨 Generate AI-powered image variations from existing images
- ✨ Edit images with natural language prompts
- 🔄 Seamlessly integrated into Sanity Studio image fields
- 🚀 Powered by Replicate's Flux Kontext Pro model
npm install @solspace/imagiterate-sanityIn your sanity.config.ts (or .js):
import {defineConfig} from 'sanity'
import {imagiterate} from '@solspace/imagiterate-sanity'
export default defineConfig({
// ... your config
plugins: [
// ... other plugins
imagiterate({
replicateApiKey: process.env.SANITY_STUDIO_REPLICATE_API_KEY || '',
}),
],
})Create a .env file in your Sanity Studio root:
SANITY_STUDIO_REPLICATE_API_KEY=your_replicate_api_key_hereGet your API key from Replicate.
- Open any document with an image field (e.g., a Post or Page)
- Upload or select an existing image
- Click the "Edit with Imagiterate" button that appears below the image field
- Enter a prompt describing the changes you want (e.g., "make it more vibrant", "add a sunset sky")
- Click "Generate" to create a variation
- Click "Use generated image" to apply it to your document
- "Make the colors more vibrant"
- "Add a dramatic sunset in the background"
- "Convert to black and white"
- "Make it look like a painting"
- "Add more contrast and saturation"
- "Change the style to watercolor"
- Sanity v4 or higher
- React 18 or 19
- Node.js 18 or higher
- A Replicate API key
The plugin requires a replicateApiKey in the configuration:
imagiterate({
replicateApiKey: string // Required: Your Replicate API key
})The plugin integrates with a Cloudflare Worker proxy at https://imagiterate.solspace.workers.dev/api/replicate to handle Replicate API calls securely. The worker manages:
- Creating predictions with the Flux Kontext Pro model
- Polling for prediction status
- Handling CORS and authentication
MIT © Solspace
See Testing a plugin in Sanity Studio on how to run this plugin with hot reload in the studio.
For issues and questions, please visit the GitHub repository.