A starter project for creating lightning-fast, offline-first websites with Netlify CMS and React.
- Create React App
- React Router for routing
- React Helmet for document titles, descriptions, meta
- React Snapshot for pre-rendering to static html so it works without Javascript ⭐️
- Netlify CMS for content management
I aim to include commonly used components and best-practices e.g. forms, settings, tags, lazy-loading images, etc.
- Hit the Deploy to Netlify button. This will:
- Clone the repo into your Github account
- Create you a new project on Netlify, build & deploy
- Once your Netlify project has been created, change a couple of settings:
- Enable Identity
- Change Registration Preferences to Invite Only
- Enable Git Gateway
- Invite users (probably yourself) to enable admin access
- Open the Identity tab and hit Invite Users
The CMS lives at __YOUR_SITE_NAME__.netlify.com/admin.
-
Clone your repo to your local machine
-
Install dependencies
yarn
or npm install
- Run the development server
yarn start
or npm run start
If you are adding or editing content locally in the CMS, a couple of things to note:
-
Changes will be pushed to the remote repo.
-
You will be prompted to enter your site's url, this is necessary for Netlify Identity to manage user login. This is stored in
localStorage
, so you might have to empty your browser cache if you are switching projects but remaining onlocalhost:3000
.
The Netlify CMS configuration is located in public/admin/config.yml
. This is where you will configure the pages, fields, posts and settings that are editable by the CMS.
Find out more in the Netlify CMS Docs.
Netlify CMS Docs
Netlify CMS Repo
Hyperstatic – the same starter project minus Netlify CMS
Gatsby + Netlify CMS Starter