@nashiko/vite-plugin-nunjucks-static
TypeScript icon, indicating that this package has built-in type declarations

0.0.1 • Public • Published

English | 日本語

This is a Vite plugin that treats Nunjucks as static HTML. Since I am not fully familiar with Vite detailed processing, there may be some uncertain parts.

Created with reference to https://github.com/macropygia/static-site-stack/tree/main/packages/vite-plugin-pug-static. Thank you.

Install

npm install @nashiko/vite-plugin-nunjucks-static

Usage

// vite.config.js
import { defineConfig } from 'vite'
import vitePluginNunjucksStatic from '@nashiko/vite-plugin-nunjucks-static'

const nunjucksOptions = {
  manageEnv(env, paths) {
    env.addFilter('hello', (str) => {
      return `Hello ${str}`
    })
  },
  renderOptions: {
    context(paths) {
      return {
        testVal: 'VAL',
        testFn: (str) => {
          return str;
        },
      }
    }
  }
}

export default defineConfig({
  root: 'src',
  build: {
    rollupOptions: {
      input: {
        home: 'src/index.njk'
      }
    }
  },
  plugins: [
    vitePluginNunjucksStatic ({
      buildOptions: nunjucksOptions,
      serveOptions: nunjucksOptions,
      ignorePattern: ['/ignore/**'],
      reload: true
    })
  ]
})

Options

  • buildOptions : object Options for build.
    • envOptions : object Options for Nunjucks Environment class.
    • manageEnv(env, paths) : function env is an Environment instance, so you can implement addFilter and other methods.
    • renderOptions : object
      • context(paths) : function Return variables and functions in an object to call from Nunjucks templates.
      • callback(result, paths, err) : function Set this if you want to add processing to the rendering result in result.
  • serveOptions : object Options for dev server. Details of the options are the same as buildOptions.
  • ignorePattern : string | string[] Patterns to exclude from conversion on the dev server. Specify as root-relative paths (starting with /)
  • reload : bool(true) Whether to perform a full reload on the dev server.

Dependencies (3)

Dev Dependencies (11)

Package Sidebar

Install

npm i @nashiko/vite-plugin-nunjucks-static

Weekly Downloads

10

Version

0.0.1

License

MIT

Unpacked Size

31.8 kB

Total Files

22

Last publish

Collaborators

  • nashiko