Need help with netlify-plugin-gatsby-cache?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

jlengstorf
194 Stars 23 Forks 35 Commits 7 Opened issues

Services available

!
?

Need anything else?

Contributors list

# 12,961
TypeScr...
GraphQL
gatsby
netlify
25 commits
# 11,460
netlify
unix
npx
exec
4 commits
# 78,596
Algolia
TypeScr...
gatsby
GraphQL
1 commit
# 30,498
TypeScr...
reselec...
Electro...
inquire...
1 commit
# 62,274
D
Lua
hammers...
gitlab
1 commit
# 348,732
React
C++
Shell
C
1 commit
# 22,062
hugo
netlify
React
js
1 commit

Netlify Build Plugin: Persist the Gatsby Cache Between Builds

Persist the Gatsby cache between Netlify builds for huge build speed improvements! ⚡️

Note: The functionality in this plugin is now available in the Essential Gatsby build plugin. Check out Essential Gatsby for additional framework-specific functionality on Netlify, including Gatsby Functions. If you choose to install it, you should remove this plugin first.

Usage

Currently, there are two ways to install this plugin on your application:

Installing from Netlify UI

One-click install to add this to your Gatsby site

Installing from your project's code

You can also install it manually using

netlify.toml
. If you want to know more about file-based configuration on Netlify, click here.

Add the following lines to your project's

netlify.toml
file:
[build]
  publish = "public"

[[plugins]] package = "netlify-plugin-gatsby-cache"

Note: The

[[plugins]]
line is required for each plugin, even if you have other plugins in your
netlify.toml
file already.

How does it work?

This plugin determines the location of your

.cache
folder by looking at the
publish
folder configured for Netlify deployment. This means that if your Gatsby site successfully deploys, it will be cached as well with no config required! 🎉

How much of a difference does this plugin make in build times?

Each Gatsby site is different, so build times vary widely between them, but one common slowdown in Gatsby builds is processing and transforming images. Gatsby is smart enough to check if these transformations have already been done and skip them, but in order to get that benefit in a build pipeline (e.g. Netlify) the

public
and
.cache
directories need to be preserved between builds. That’s what this plugin does!

| | No Cache | Cache | Savings | |------------------------------------------------------------|---------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------|---------| | * 231 GraphQL queries
* 1,871 images
* 224 pages | 293207ms (build log) | 72835ms (build log) | 75% | | * 5 GraphQL queries
* No image processing
* 32 pages | 22072ms (build log) | 15543ms (build log) | 30% |

tl;dr: Repeat builds with lots of images will be much faster. With few or no images, the difference will be there, but it won’t be as pronounced.

Want to learn how to create your own Netlify Build Plugins?

Check out Sarah Drasner’s excellent tutorial!

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.