Netlify + Gatsby + Cosmic + Automatic builds with Webhooks

Community Articles
Community Articles Netlify + Gatsby + Cosmic + Automatic builds with Webhooks

Gatsby is the new hotness for static sites, and Netlify is an amazing service that helps you deploy static sites with some brilliant automation capabilities.  Combine these with the new Cosmic source plugin for Gatsby and you have a technology stack that scales well and is highly performant.

In this tutorial, I'll show you how to deploy your Gatsby Blog to Netlify and trigger automatic builds on content edits using Cosmic Webhooks.


Install the App

Check out the Gatsby Blog available on Cosmic.  Install the app:
1. Create a new Bucket
2. Choose the option to start with an App
3. Install the Gatsby Blog


Deploy to Netlify

After you install the Gatsby Blog app, install the Deploy to Web Extension.

Find the Netlify option and add the Gatsby Blog GitHub URL:
https://github.com/cosmicjs/gatsby-blog-cosmicjs


Set Environment Variables

In Netlify, go to Your Netlify Site > Settings > Build and Deploy > Build environment variables.  Set a COSMIC_BUCKET environment variable to your Cosmic Bucket slug.  Add your COSMIC_READ_KEY  (Optional) if you've set this in Your Cosmic Bucket > Settings.


Do It Live!

Your site should now be live and look like this:


Set Up Hooks

Now let's make sure to tell Netlify to rebuild our site whenever content is edited in Cosmic.  To do this, first go into Netlify's deploy settings area located in Your Netlify Site > Settings > Build and Deploy > Build Hooks and add a Build Hook:

Save, then copy and paste the generated build hook URL into your Cosmic Bucket > Webhooks

This will trigger a rebuild whenever content is created, edited or deleted in Cosmic.


Now Edit Content!

Now you'll notice whenever you add / edit / remove content in your Cosmic Bucket, a magic message is sent to Netlify to tell it to rebuild your awesome Gatsby site!

In Conclusion

With Gatsby, Netlify and Cosmic, building fast, scalable and highly performant websites has never been easier. With webhooks and Netlify's built-in continuous deployment, you can enjoy an amazing automated developer experience.

Let me know if you have any questions!  Reach out to me on Twitter and message me on Slack.

You may also like


Cosmic makes it easy to deploy your websites and applications to the web. You can deploy an app from any git repository to the Cosmic App Server from any Bucket. Cosmic uses Dokku (Docker + Heroku-like deployment) to deploy your app from any GitHub, BitBucket or any other public repo.
Here we build a progressive web app in React.js with the power of Cosmic. It respond with status 200 and carries data when you disconnected to internet and in Chrome browser (both mobile and desktop) it gives an option to install the app on home screen.
Digital Ocean, a hosting provider beloved by developers, provides a highly intuitive interface for deploying and managing application infrastructure. In this tutorial I'm going to show you how to install and deploy a Cosmic-powered Nuxt.js app on Digital Ocean.
An application for book lovers to view a list of their favorite books.
This is a quick example to show some of the powerful things you can do with the Cosmic NPM Module. This script will, add a Bucket to your Cosmic account, add an Object Type (Pages) and add a few Pages.
Blazing fast blog built using React Static that utilizes the power of Cosmic.

Get Started with Cosmic

Build personal projects for free. Add your team at unbeatable prices.
Start Building Talk to Sales