Discover / Marketing
Sanity Studio CMS
by sanity-ioTypeScript
Sanity Studio real-time collaborative headless content management system.
Maturity: stable because 10y old, v6.8.0 released 4d ago. Derived from release and commit history, not a rating.
- Stars
- 6.3k
- Forks
- 545
- Downloads / mo
- —
- Last commit
- 2026-08-03
- License
- MIT
- Open issues
- 148
Market and trust evidence
Edition not yet matchedNo exact skills.sh identity match is available for this repository. Repository adoption and freshness remain visible above; install momentum is not inferred.
Trust analysis is a screening signal, not a security warranty. Read the ranking and trust methodology.
In practice
Written by AI from this repository’s README · high confidenceBuilding a tailored editing interface for structured content otherwise means writing the admin application yourself.
Use it when
When you want a customizable React based editing studio plus a hosted real time content store.
Not the right pick when
Content lives in the hosted Content Lake with pay as you go overages, so it is not a self contained self hosted CMS.
Capabilities
- Studio customizable with JavaScript and React
- Plug in architecture and custom components
- Advanced block editor for structured content
- GROQ and GraphQL query APIs
- Image uploads with on demand transforms and metadata
- Theming with your own branding
Requirements
- A Sanity account, starting on the free plan with pay as you go overages
Cost: Open source with a paid cloud option
Video walkthroughs
Third-party YouTube uploads matched to this tool by title, channel and repository name on 2026-08-03. Not made, reviewed or endorsed by SkillPilot. View counts and publish months are as of the match date and the month is approximate. Nothing loads from YouTube until you press play.
What the repository ships
Detected from the actual files in the repository root.
Latest release v6.8.0
Published 2026-07-30
Sanity Studio v6.8.0
This release includes various improvements and bug fixes.
For the complete changelog with all details, please visit:
www.sanity.io/changelog/studio-Ni43LjA
Install or upgrade Sanity Studio
To upgrade to this version, run:
npm install sanity@latest
To initiate a new Sanity Studio project or learn more about upgrading, please refer to our comprehensive guide on Installing and Upgrading Sanity Studio.
📓 Full changelog
Author | Message | Commit
------------ | ------------- | -------------
@pedrobonamin | fix(core): enable clear button when perspective is the non default one (#13819) | 1938e375862ad99379958736e8c7b2b2139b8ee7
@pedrobonamin | fix(core): copy to drafts using transaction, prepare for variants (#13815) | f283b1e58518888d9f6afbf095666784a4e1dfd9
@pedrobonamin | chore(structure): useCopyToDrafts changes (#13806) | e65a38aa6311fa1a95dd67009a6992fdd0aed6bc
squiggler-app[bot] | chore(deps): update dependency @sanity/workbench to v0.1.0-alpha.36 (#13808) | ebc1904292c45d3b15b3fb9dd075d4308705596d
squiggler-app[bot] | fix(deps): update dependency @sanity/cli to ^7.15.1 (#13813) | f57fff2ad2680e0c523d33bb543ffdc4dc5b12cd
squiggler-app[bot] | chore(deps): update dependency @sentry/react to ^10.68.0 (#13812) | 391db9438a9740aa5108717d0189dd2a139ea40d
squiggler-app[bot] | chore(deps): update dependency turbo to ^2.10.7 (#13809) | b341cd173f79a607904957a1580e4c6d8bdbaa12
squiggler-app[bot] | fix(deps): update dev-non-major (#13810) | bd9cee7083d7233954d93f72a54ad58afe264fe5
squiggler-app[bot] | chore(deps): update dependency @sanity/ailf to ^7.33.0 (#13811) | 4c7209502f827613b8e4c4d534fdd0cd820544b1
squiggler-app[bot] | chore(deps): update dependency @sanity/vanilla-extract-vite-plugin to ^0.2.8 (#13807) | 733f6186e1a0d02569be09b0f0ebbc439a59a4a6
@stipsan | chore(oxlint): allow side-effect css imports without suppressions (#13796) | ef50a8f2499f6770fb34983eff6723f521e218c9
@stipsan | fix(releases): throttle published archived history batches (#13805) | afb3074b035efe4297aa1e9b7ac48cbc9fa82ea9
@stipsan | chore(deps): upgrade to typescript 7 (#13759) | fe0cd997dd0e489371d05b2c90738e6e8f668418
@stipsan | fix(deps): bump react-rx to 4.2.5 (#13797) | d820ba12450f8872aec5aebc690cc1ac44010035
@juice49 | fix(sanity): virtualised item dimensions in hidden CommandList (#13792) | 20525238d6599f5d956535c5a80df2cf37d8a23c
squiggler-app[bot] | chore(deps): dedupe pnpm-lock.yaml (#13766) | 015f924830a17aba21042e54f4b03f0f2e4de586
squiggler-app[bot] | chore(tests): generate dts tests 🤖 ✨ (#13801) | 6ab5f7d655d2015e9eb75713e385c7e8231f844d
@colepeters | feat(sanity): install ui-poc for Studio, migrate 2 Boxes (#13776) | e157f63fb2cc7b38436cbdf1f029c539bd30559d
@jordanl17 | chore(codeowners): assign presentation tool to studio team (#13769) | cad24eaf6156758b7bbce26848445b48a23a54b4
@pedrobonamin | fix(structure): allow creating variant documents with no base doc (#13789) | d1db5e9f026334d43ee6e7cd8b63886565534b33
squiggler-app[bot] | fix(deps): update dependency @sanity/cli to ^7.14.0 (#13777) | 8cb42add66968eacd0c3bc4ccabcdcee0097cc4a
@jordanl17 | docs(telemetry): define standard location, position and path property value sets (#13770) | 258e6b00ca713f9fb338fe061d395e8a6bfa6271
@juice49 | chore(sanity): move Delay component to core (#13690) | da8f541d744e6307ab972cbb63f504c23b23e193
@juice49 | chore(sanity): return SingleActionResult from createVariantDocument (#13690) | aec0ddf1c872cb3b3623df77e056c2d3cb94575c
@juice49 | refactor(sanity): expand createVariantScopedDocument to explicitly handle baseId or document source (#13690) | 633dbd1517fd0da5c7f18a7bcfb7a6e6cb8d3392
@juice49 | chore(sanity): variant creation in document group inventory (#13690) | c15ea83babf67ca9bc01d25eb2c39aeb01ecb9b3
@jordanl17 | fix(test-config): pin locale to en-US for deterministic test runs (#13779) | 8dc3d96f8e853a9
Tags
README
<div align="center">
<a href="https://sanity.io">
<img src="https://cdn.sanity.io/images/3do82whm/next/d6cf401d52c33b7a5a354a14ab7de94dea2f0c02-192x192.svg" />
</a>
<h1 align="center">Sanity</h1>
<h4 align="center">
<a href="https://www.sanity.io/get-started?ref=gh">Get Started</a> |
<a href="https://www.sanity.io/docs">Docs</a> |
<a href="https://www.sanity.io">Website</a>
</h4>
</div>
<div align="center">
<img alt="" src="https://img.shields.io/npm/v/sanity/latest?style=flat">
<img alt="" src="https://img.shields.io/npm/v/sanity/next?style=flat">
<img alt="" src="https://img.shields.io/npm/v/sanity/stable?style=flat">
<br />
<img alt="" src="https://img.shields.io/npm/dm/@sanity/client?style=flat">
<img alt="" src="https://img.shields.io/npm/l/sanity.svg?style=flat">
<a aria-label="Join the Sanity community" href="https://www.sanity.io/community/join?utm_source=readme">
<img alt="" src="https://img.shields.io/discord/1304483263171264613?label=Discord"></a>
<a aria-label="Follow Sanity on Bluesky" href="https://bsky.app/profile/sanity.io">
<img alt="" src="https://img.shields.io/badge/follow-@sanity.io-blue?logo=bluesky"></a>
</div>
Build powerful production-ready content workspaces
The Sanity Composable Content Cloud lets teams create remarkable digital experiences at scale. Sanity Studio is an open-source, single-page application that is fast to set up and quick to configure. The Studio comes with a complete studio customization framework that lets you tailor the workspace as your needs grow.
Sanity hosts your content in a real-time, hosted data store called Content Lake. Get started with the free plan with generous bandwidth and hosting included and pay-as-you-go for overages.
Quickstart
Initiate a new project by running the following command:
npm create sanity@latest
# With other package managers:
yarn create sanity@latest
pnpm create sanity@latest
Go here for a step-by-step guide on how to get up and running.
Check out the docs and plugins and start building.
Key Features
Sanity Studio
Sanity Studio is an open-source real-time CMS, that you can customize with JavaScript and React.
- Efficient editing, instant UI for complex fields
- Responsive, works on narrow screens
- Plug-in architecture and custom components
- Style with your own branding
- Advanced block editor for structured content
- Use JavaScript to add field validations, organize documents, and set initial values
Developer experience
- Bring your own frontend, or whatever else you might need.
- Sweet APIs for reading, writing, importing, exporting, go back in time, and listening for updates.
- Secure, scalable and GDPR compliant.
- Zero config Graph Oriented Query Language (GROQ), and GraphQL API.
- Helpful and friendly developer community.
Structured Content
- Distribute from a single source of truth, in real-time.
- Unlock programmatic approaches to workflows and design.
- Upload images and transform them on demand.
- Query images for metadata like dominant colors, sizes, geo-location, and EXIF metadata.
- Rich text that can be serialized into any markup language.
Stay up to date
- Follow us on X
- Follow us on Bluesky
- Subscribe to our YouTube channel
- Subscribe to our blog by RSS
- Subscribe to our newsletter
- Join the Sanity community
Code of Conduct
We aim to be an inclusive, welcoming community for everyone. To make that explicit, we have a code of conduct that applies to communication around the project.
Want to contribute?
Found a bug, or want to contribute code? Pull requests and issues are most welcome. Read our contributing guidelines to learn how.
Help Improve Sanity Studio translations
We're always looking to make Sanity Studio more accessible and user-friendly, and your contributions can make a big difference. Whether you're a seasoned developer or just starting out, helping with translations is a fantastic way to get involved.
If you're fluent in a language other than English, we'd love your help in reviewing and improving translations. Your expertise can greatly enhance the experience for users worldwide.
How to Contribute:
- Visit our sanity-io/locales repository and try out a locale you are fluent in.
- Have ideas for improvements? Submit a PR following the contributing guide.
- See if there are open PRs in languages you are fluent in and help review them.
Interested in playing a bigger role? You can ask to be added as a maintainer to oversee translations for specific languages, where you will be automatically added as a reviewer on PRs that involve your language. See the sanity-io/locales README for more.
Your contributions not only improve Sanity Studio but also bring together a diverse and global community of users. We appreciate every effort, big or small, and we can't wait to see what you bring to the table!
License
Sanity Studio is available under the _MIT License_