To create a cloud-based Stackbit project based on this repository, click here.
You will need to connect your Contentful account (create a free account if needed), and a new Contentful space with sample content will be created for you.
A new GitHub repository with this codebase will be created for you. You can transfer ownership of the duplicated repository to you through the Project Settings.
Lastly, a live production build of the website on Netlify is automatically provisioned.
Before you begin, please make sure you have the following:
- Contentful account
- Node v14 or later
Clone this repository, then run npm install
in its root directory.
After signing into Contentful, create a new space.
If you don't already have a management token (or personal access token), generate one. To do so, go into your new empty space, then:
- Click Settings
- Choose API Keys
- Select the Content management tokens tab
- Click the button to generate a new token
From the same place you generated the management token, you can now generate API access keys.
- Select the content delivery / preview tokens tab
- Choose Add API key
In your project, duplicate .env.example
to .env
.
Fill in the values in the file based on the keys you've created.
Note: the Contentful space ID can be viewed and copied via Settings->General Settings in Contentful.
Import the provided content models & content into Contentful by running the import.js
script:
node ./contentful/import.js
If the import fails to run, make sure that you've run npm install
and that all keys in your .env
file are set correctly.
Run the Next.js development server:
npm run dev
Visit localhost:3000 and you should see the example content you imported into your new Contentful space.
Keep the Next.js development server running, and open a new command-line window in the same directory.
Install Stackbit's CLI tools (once):
npm i -g @stackbit/cli@latest
Run the CLI:
stackbit dev
Click the displayed link to localhost:8090/_stackbit and the visual editor will open.
To deploy a cloud-based Stackbit project connected to your repository:
- Push your code to a GitHub repository (preferably, push only the contents of this directory as a new repository).
- Open the import page and choose Use my repository.
If you get stuck along the way, drop into our Discord server and send a message in the #documentation
or #help
channels.