Gastby Starter Ghost
A starter template to build lightning fast websites with Ghost & Gatsby.
# With Gatsby CLI gatsby new gatsby-starter-ghost https://github.com/TryGhost/gatsby-starter-ghost.git
# From Source git clone https://github.com/TryGhost/gatsby-starter-ghost.git cd gatsby-starter-ghost
Then install dependencies
Start the development server. You now have a Gatsby site pulling content from headless Ghost.
By default, the starter will populate content from a default Ghost install located at https://gatsby.ghost.io.
To use your own install, edit the
.ghost.json config file with your credentials. You can find your
contentApiKey in the "Integrations" screen in Ghost Admin.
Deploying with Netlify
The starter contains three config files specifically for deploying with Netlify. A
netlify.toml file for build settings, a
/static/_headers file with default security headers set for all routes, and
/static/_redirects to set Netlify custom domain redirects.
To deploy to your Netlify account, hit the button below.
Content API Keys are generally not considered to be sensitive information, they exist so that they can be changed in the event of abuse; so most people commit it directly to their
.ghost.json config file. If you prefer to keep this information out of your repository you can remove this config and set Netlify ENV variables for production builds instead.
Once deployed, you can set up a Ghost + Netlify Integration to use deploy hooks from Ghost to trigger Netlify rebuilds. That way, any time data changes in Ghost, your site will rebuild on Netlify.
You can disable the default Ghost Handlebars Theme front-end by enabling the
Make this site private flag within your Ghost settings. This enables password protection in front of the Ghost install and sets
<meta name="robots" content="noindex" /> so your Gatsby front-end becomes the source of truth for SEO.
# Run a production build, locally gatsby build # Serve a production build, locally gatsby serve
develop uses the
development config in
.ghost.json - while Gatsby
build uses the