9.5.0 • Published 3 years ago

@neutrinojs/html-template v9.5.0

Weekly downloads
5,269
License
MPL-2.0
Repository
github
Last release
3 years ago

Neutrino HTML Template Middleware

@neutrinojs/html-template is Neutrino middleware for automatically creating HTML files for configured entry points.

NPM version NPM downloads

Requirements

  • Node.js 10+
  • Yarn v1.2.1+, or npm v5.4+
  • Neutrino 9
  • webpack 4

Installation

@neutrinojs/html-template can be installed via the Yarn or npm clients.

Yarn

❯ yarn add --dev @neutrinojs/html-template

npm

❯ npm install --save-dev @neutrinojs/html-template

Usage

@neutrinojs/html-template can be consumed from the Neutrino API, middleware, or presets. Require this package and plug it into Neutrino:

const htmlTemplate = require('@neutrinojs/html-template');

// Usage shows default values
// Accepts options specified by html-webpack-plugin:
// https://github.com/jantimon/html-webpack-plugin#configuration
neutrino.use(
  htmlTemplate({
    // @neutrinojs/html-template includes a custom template that has more features
    // (eg appMountId and lang support) than the default html-webpack-plugin template:
    // https://github.com/jantimon/html-webpack-plugin/blob/master/default_index.ejs
    template: require.resolve('@neutrinojs/html-template/template.ejs'),
    appMountId: 'root',
    lang: 'en',
    meta: {
      viewport: 'width=device-width, initial-scale=1',
    },
    // Override pluginId to add an additional html-template plugin instance
    pluginId: 'html',
  }),
);

// Most commonly, you will want to override the initial page title:
neutrino.use(
  htmlTemplate({
    title: 'React Application',
  }),
);
// Using in .neutrinorc.js
const htmlTemplate = require('@neutrinojs/html-template');

// Usage shows default values
// Accepts options specified by html-webpack-plugin:
// https://github.com/jantimon/html-webpack-plugin#configuration
module.exports = {
  use: [
    htmlTemplate({
      // @neutrinojs/html-template includes a custom template that has more features
      // (eg appMountId and lang support) than the default html-webpack-plugin template:
      // https://github.com/jantimon/html-webpack-plugin/blob/master/default_index.ejs
      template: require.resolve('@neutrinojs/html-template/template.ejs'),
      appMountId: 'root',
      lang: 'en',
      meta: {
        viewport: 'width=device-width, initial-scale=1',
      },
      // Override pluginId to add an additional html-template plugin instance
      pluginId: 'html',
    }),
  ],
};

// Most commonly, you will want to override the initial page title:
module.exports = {
  use: [
    htmlTemplate({
      title: 'React Application',
    }),
  ],
};

Customization

@neutrinojs/html-template creates some conventions to make overriding the configuration easier once you are ready to make changes.

Plugins

The following is a list of plugins and their identifiers which can be overridden:

NameDescriptionNODE_ENV
htmlAutomatically generates HTML files for configured entry points.all

Contributing

This middleware is part of the neutrino repository, a monorepo containing all resources for developing Neutrino and its core presets and middleware. Follow the contributing guide for details.

9.5.0

3 years ago

9.4.0

4 years ago

9.3.0

4 years ago

9.2.0

4 years ago

9.1.0

4 years ago

9.0.0

4 years ago

9.0.0-rc.5

4 years ago

9.0.0-rc.4

5 years ago

9.0.0-rc.3

5 years ago

9.0.0-rc.2

5 years ago

9.0.0-rc.1

5 years ago

9.0.0-rc.0

5 years ago

9.0.0-beta.1

6 years ago

9.0.0-beta.0

6 years ago

8.3.0

6 years ago

8.2.3

6 years ago

8.2.2

6 years ago

8.2.1

6 years ago

8.2.0

6 years ago

8.1.2

6 years ago

8.1.1

6 years ago

8.1.0

6 years ago

8.0.18

6 years ago

8.0.17

6 years ago

8.0.16

6 years ago

8.0.15

6 years ago

8.0.14

6 years ago

8.0.13

6 years ago

8.0.12

6 years ago

8.0.11

6 years ago

8.0.10

6 years ago

8.0.9

6 years ago

8.0.8

6 years ago

8.0.8-next.3

6 years ago

8.0.8-next.2

6 years ago

8.0.8-next.1

6 years ago

8.0.7

6 years ago

8.0.6

6 years ago

8.0.6-next.1

6 years ago

8.0.5

6 years ago

8.0.4

6 years ago

8.0.4-next.4

6 years ago

8.0.4-next.3

6 years ago

8.0.4-next.2

6 years ago

8.0.4-next.1

6 years ago

8.0.3

6 years ago

8.0.2

6 years ago

8.0.1

6 years ago

8.0.0

6 years ago

8.0.0-next.2

6 years ago

8.0.0-next.1

6 years ago

8.0.0-next.0

6 years ago