Skip to content

Latest commit

 

History

History
70 lines (53 loc) · 1.53 KB

README.md

File metadata and controls

70 lines (53 loc) · 1.53 KB

NetlifyPushWebpackPlugin

Generate HTTP2 Server Push _headers file for Netlify using HtmlWebpackPlugin.

For use with Webpack 4 and HtmlWebpackPlugin 4

Installation

npm i netlify-push-webpack-plugin

or

yarn add netlify-push-webpack-plugin

Usage

Option Type Description
filename String Name and path of the generated headers file
headers Array Other headers to be added to the file (optional)
include String Only include 'css', 'js' or 'all' (default: 'all')

Example

The following config

const HtmlWebpackPlugin = require("html-webpack-plugin");
const NetlifyServerPushPlugin = require("netlify-push-webpack-plugin");

module.exports = {
  plugins: [
    new HtmlWebpackPlugin(),
    new NetlifyServerPushPlugin({
      filename: "_headers",
      headers: [
        "  X-Frame-Options: DENY",
        "  Referrer-Policy: strict-origin-when-cross-origin",
        "/assets/*",
        "  Cache-Control: public, max-age:360000"
      ],
      include: "css"
    })
  ]
};

will result in a headers file looking something like this:

/*
  Link: <bundle.js>; rel=preload; as=script
  Link: <main.css>; rel=preload; as=style
  X-Frame-Options: DENY
  Referrer-Policy: strict-origin-when-cross-origin
/assets/*
  Cache-Control: public, max-age:360000

Testing

Tests are ran using using Ava with the following command:

npm run test