Sanity Studio is a single page app (SPA) written in React, where you can configure the document types and input fields, with simple JavaScript objects. This guide will walk you through how to deploy Sanity Studio with Edgio in four simple steps.
NOTE: You can skip this step if you already have a project set up.
First, install the Sanity CLI:
npm i -g @sanity/cli
To initiate a new project and download the Studio code to your computer, run the following in the command line:
sanity init
The Sanity CLI will walk you through the necessary steps to set up a project, letting you choose a schema template. When you're done with these steps, the CLI will download the source code and configuration to get you started. To start a local development server, cd
into the project folder and run the following command:
sanity start
First, install the Edgio CLI:
npm install -g @edgio/cli
To add Edgio to an existing app, run the following:
edgio init --connector=@edgio/sanity-studio
The above command creates routes.ts and edgio.config.js. Replace the content in routes.ts by the following:
import { Router } from '@edgio/core'
import { sanityRoutes } from '@edgio/sanity-studio'
export default new Router({ indexPermalink: false }).use(sanityRoutes)
After saving your routes.ts
file you will be ready to deploy your project.
To preview production app locally run:
edgio build && edgio run --production
To deploy run:
edgio deploy
Once Sanity Studio is deployed, you will need to add it's URL to Sanity’s CORS origins settings. You can do this from the command line:
sanity cors add https://your-url.layer0-limelight.link --credentials
Alternatively, you can navigate to manage.sanity.io, find your project and under Settings > API, add the Studio URL to the CORS origins list. You should allow credentials as the Studio requires authentication for added security.