Netlify + Gatsby + Cosmic JS + 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 JS 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 JS Webhooks.


Install the App

Check out the Gatsby Blog available on Cosmic JS.  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 JS Bucket slug.  Add your COSMIC_READ_KEY  (Optional) if you've set this in Your Cosmic JS 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 JS.  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 JS Bucket > Webhooks

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


Now Edit Content!

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

In Conclusion

With Gatsby, Netlify and Cosmic JS, 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.

Was this article helpful?

Thank you! Your input helps us improve our articles and resources. If you have any other questions or comments, please contact support.

You may also like


Website built using the Next.js Website Boilerplate. Fully responsive down to mobile, SEO ready, includes a contact form and full site search.
Build a fully functioning messenger that can send SMS messages to application users. We will discuss Server side rendering of a React front, and leveraging a simple api in order to make protected requests to Cosmic JS cloud services.
In this tutorial I'm going to show you how to create a "Tutorials Portfolio" app using a Nuxt.js, and Cosmic JS.
Cosmic JS makes it easy to manage content for your Bootstrap applications. In this blog we'll quickstart a Bootstrap Landing Page using the Cosmic CLI. This single page website landing page is built using Node.js and a minimal theme from Start Bootstrap.
An application for book lovers to view a list of their favorite books.
The Cosmic JS team was honored to to speak at Toyota Connected for the Ember.js Dallas Meetup this week. Cosmic JS co-founder Tony Spiro presented "Building Modern Apps with API Services" to illustrate the growing trend of offloading core dev tasks onto best-in-class API services.