https://github.com/quantizor/gatsby-plugin-remove-fingerprints
https://github.com/quantizor/gatsby-plugin-remove-fingerprints
Last synced: 4 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/quantizor/gatsby-plugin-remove-fingerprints
- Owner: quantizor
- License: mit
- Created: 2021-01-18T18:08:21.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2021-01-18T18:12:47.000Z (over 5 years ago)
- Last Synced: 2025-10-15T00:17:48.794Z (8 months ago)
- Size: 4.88 KB
- Stars: 0
- Watchers: 0
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# gatsby-plugin-remove-fingerprints
Easily remove the output contenthash from your built JavaScript files.
## Install
`yarn add gatsby-plugin-remove-fingerprints`
## How to use
Add the plugin to your
```js
// In your gatsby-config.js
plugins: [`gatsby-plugin-remove-fingerprints`];
```
## Why?
Gatsby's default behaviour is to include a `[contenthash]` for all built JavaScript files. The default output configuration looks like this:
```js
return {
filename: `[name]-[contenthash].js`,
chunkFilename: `[name]-[contenthash].js`,
path: directoryPath(`public`),
publicPath: withTrailingSlash(publicPath),
};
```
This is useful for the majority of cases, but services like [Netlify](https://netlify.com) recommend building files without a hash. This plugin will eliminate the hash from built JavaScript files. The configuration looks like this:
```js
if (stage === 'build-javascript') {
const newWebpackConfig = {
...getConfig(),
output: {
filename: `[name].js`, // no contenthash
chunkFilename: `[name].js`, // no contenthash
path: getConfig().output.path,
publicPath: getConfig().output.publicPath,
},
};
actions.replaceWebpackConfig(newWebpackConfig);
}
```
To learn more about the reasons why this is important you can read Netlify's staff response to a Gatsby issue, [Netlify and cache busting urls](https://github.com/gatsbyjs/gatsby/issues/11961).
You can also learn more about how [Netlify handles their caching](https://www.netlify.com/blog/2017/02/23/better-living-through-caching/).