unplugin-cloudflare-headers

Generates cloudflare compatible headers with _headers file


Keywords
unplugin, vite, webpack, rollup, transform, cloudflare, headers
License
MIT
Install
npm install unplugin-cloudflare-headers@0.2.0

Documentation

unplugin-cloudflare-headers

NPM version

Install

npm i unplugin-cloudflare-headers

Usage

Vite

// vite.config.ts
import CloudflareHeaders from 'unplugin-cloudflare-headers/vite'

export default defineConfig({
  plugins: [
    CloudflareHeaders({ /* options */ }),
  ],
})
Rollup
// rollup.config.js
import CloudflareHeaders from 'unplugin-cloudflare-headers/rollup'

export default {
  plugins: [
    CloudflareHeaders({ /* options */ }),
  ],
}


Webpack
// webpack.config.js
module.exports = {
  /* ... */
  plugins: [
    require('unplugin-cloudflare-headers/webpack')({ /* options */ })
  ]
}


esbuild
// esbuild.config.js
import { build } from 'esbuild'
import CloudflareHeaders from 'unplugin-cloudflare-headers/esbuild'

build({
  plugins: [CloudflareHeaders()],
})


Options

Top level keys of the options are route definitions. Each route should have an array of headers. Header is simple object, where key is header name and value (string or false) is header value. Let's see example.

This options:

const options = {
  '/*': [{ 'x-testing': 'hello 🌐' }],
  '/admin': [{ 'x-testing': false }]
  // use `false` as header value to detach header from specific route
}

will result into this _headers file:

/*
	x-testing: hello 🌐
/admin
	! x-testing

More on _headers file in cloudflare docs

License MIT