How to contribute to Sanity Studio UI as an external contributor?

6 replies
Last updated: Feb 7, 2023
If someone wanted to contribute to the studio UI experience, is there a guide for how to contribute as someone outside of Sanity? 🙂
AI Update

Yes! Sanity welcomes external contributions to the Studio UI experience. Here's how you can get involved:

Main Contributing Guide

The sanity-io/sanity repository on GitHub has a comprehensive CONTRIBUTING.md that covers everything you need to know. Here's a quick overview:

Getting Started:

  1. Read the Code of Conduct
  2. Make sure you have Node.js 18+ and pnpm installed
  3. Clone and set up the repo:
git clone git@github.com:sanity-io/sanity.git
cd sanity
pnpm install
pnpm build
pnpm dev

Finding Issues to Work On: Browse the issues on GitHub and look for those tagged with "good first issue" if you're just getting started.

Contributing to the UI Design System

If you want to contribute specifically to Sanity's UI components, check out the sanity-io/ui repository, which contains the design system that powers Studio's interface.

Contributing Translations

One of the easiest ways to contribute is through translations! Visit the sanity-io/locales repository to:

  • Try out a locale you're fluent in
  • Submit PRs to improve translations (follow the contributing guide)
  • Review open PRs in languages you know
  • Even become a maintainer for specific languages

Workflow

  • Create a descriptively named branch off main (e.g., feat/some-new-feature)
  • Open a pull request when ready
  • After at least two reviewers approve, it can be merged
  • The team prefers squash + merge for most PRs

The Sanity team is very welcoming to external contributors, and your contributions can make a real difference for users worldwide! 🙂

Show original thread
6 replies
Hello
user S
! I'm a web developer that recently discovered Sanity while searching for headless CMSs for my cousin's website, and I became a big fan 🙂. I very much enjoyed building with Sanity and I was very impressed at what Sanity Studio was capable of.
So I got a little curious and wanted to take a look at the internals of the studio, and so I went ahead and cloned the project and ran a couple of yarn commands that were suggested in CONTRIBUTING.md. It started a local studio on port 3333 but I don't seem to have a permission for that project (ID: ppsg7ml5).

So I was wondering if I should ask for the access permission or if this project is internal members only? And if it's internal only, how should people like me (potential outside contributors) set up a dev environment correctly?

Sorry for mentioning you in an old thread I found while searching with 'contributing' keyword in the channel
🙏.
User, you need to add your own project and then you can code your heart out 🙂
the documents/project is basically unimportant when it comes to working on the studio
user S
ah okay thanks! That’s what I suspected but just wanted make sure that i wasn’t missing out on anything 😄 . Maybe it’d be better to add this as a note in CONTRIBUTING.md to avoid confusion? Or maybe i’m the only one who’s confused 😅 I don’t know. Anyways, thanks for the fast feedback! I very much appreciate it 👍
No issue at all, so far the question did not come up very often, but its a relevant question 😉 I will see if people will want to add that or leave the community to get into this from our side
user S
sounds about right! Hey by the way thank you for building and open-sourcing an awesome product. I know i’d learn a lot by studying the source. Huge respect for all the devs at Sanity!

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.

Was this answer helpful?