webpack-middware-2

1.1.3 • Public • Published

Webpack-middware

npm David David GitHub tag
JUMP TO: Class API | Configuration | Miscellaneous
Server middleware that manages your webpack compilation when in development.
This completely rewritten and heavily tested the webpack-dev-middleware brings a powerful support of multiple webpack configurations and some features enhancing basic functionality. See below.

$ npm i webpack-middware
$ npm i hinell/webpack-middware --production # latest version 
var   compiler  = new Webpack(/* your configs, one or more.. */)
    , Middware  = require('webpack-middware')
    , app       = require('express')();
      app.use((middware = new Middware({
        compiler    : compiler, // compiler property is required!
        publickPath :'/public'  // by default '/'
      , headers     : {         // headers to be served to
        , 'Cache-control': 'max-age=0' // every client requiest
        , files :                      // or for specific file request
            {'vendor':{'Cache-control': 'max-age=3600'}}// headers are sent with response  when the name
                                                        // of any requested webpack output bundle
                                                        // matches for instance to the 'vendor' regexp
      , fs          : new require('memory-fs') // feel free to choose the file system
      , watch       : {}  // watch config
      })).middleware)     // ⚠ don't forget to provide the middleware callback to the .use()!
      app.listen(3000);
      // Miscellaneous
      middware.watching              // access watching, undefined in lazy mode (lazy option is specified)
      middware.watching.invalidate() // invalidate bundle
      middware.fs                    // file system access

API

var   middware = new Middware(compiler[, config]) // middware takes webpack compiler and optional config
var   middware = new Middware(config) // the compiler passed by the config property like {compiler: compiler}

middware.middleware - (req,res,next) - server request listener (middleware)

Config

.compiler - webpack compiler instance, this option is required
.fs - files system where compiled files are kept, by default it is equal to the require('fs')
.headers - {header: value} - serve headers along the response on each request to the webpack output bundle picked by name
.headers.files - {filename:{header: value}} - the same as .headers but only for a particular webpack output bundle
.filename - String - filename on which request middware starts compilation (lazy mode required)
.publicPath - String - by default '/'
.lazy - Boolean - activate lazy mode so middware compiles bundle by request, false by default
.error - Boolean - log errors, false by default
.debug - Boolean - log debug info, false by default
.quiet - Boolean - log no info about compilation, except errors and debug, false by default

Miscellaneous

Rest of options can be found here.
Webpack multiple configurations.

Dependencies (2)

Dev Dependencies (4)

Package Sidebar

Install

npm i webpack-middware-2

Weekly Downloads

7

Version

1.1.3

License

MIT

Last publish

Collaborators

  • fay98de