Eleventy and Sanity Blog Boilerplate
Minimal blog with Eleventy and Sanity.
This is a monorepo with a pre-configured Sanity Studio (/studio
) and a very basic setup of Eleventy (/web
).
Quick start
npm install
in the project root folder on localnpm run sanity-init
to reconfigure the studio with a new or existing projectnpm run dev
to start the Studio and 11ty in watch mode- Sanity Studio runs on localhost:3333
- 11ty outputs the static files in
_site
npm run build
to build to production locally
Deploy on Netlify
You can host both the studio and the 11ty blog on Netlify as two apps. Log in to your Netlify account and add them as two separate apps with the following settings:
Studio
- Repository:
<your repository>
- Base directory:
studio
- Build command:
npm run build && cp ./netlify.toml dist
- Publish directory:
studio/dist
You have to add CORS-settings for the studio deployed on Netlify.
Web
- Repository:
<your repository>
- Base directory:
web
- Build command:
npm run build-web
- Publish directory:
web/_site
now
Deploy on The now.json
has configuration for deploying both the frontend and the studio on one now deployment. The web frontend can be browsed from the root of your now domain. The Studio can be accessed on https://<your-domain>.now.sh/studio
.
-
Add a
"basePath": "/studio"
tosanity.json
:"project": { "name": "sanity-tutorial-blog", "basePath": "/studio" },
-
You have to add CORS-settings for the studio deployed on
now
.
CORS-settings for the Studio
Go to your projects API-settings on manage.sanity.io => Settings => API => CORS origins => Click "Add" => Add domain for the now deployment + Allow credentials.
or
> cd studio
> sanity cors add https://<your-domain>.now.sh`