1.0.4 • Published 6 years ago

externals-dependencies v1.0.4

Weekly downloads
22
License
MIT
Repository
github
Last release
6 years ago

externals-dependencies

Easily exclude dependencies in Webpack

Webpack allows you to define externals - modules that should not be bundled.

When bundling with Webpack for the backend - you usually don't want to bundle its node_modules dependencies. This library creates an externals function that ignores node_modules when bundling in Webpack.(Inspired by the great Backend apps with Webpack series and webpack-node-externals)

Quick usage

npm install externals-dependencies --save-dev

In your webpack.config.js:

var externalsDep = require('externals-dependencies');
...
module.exports = {
    ...
    target: 'node', // in order to ignore built-in modules like path, fs, etc.
    node: {
        console: true,
        global: true,
        process: true,
        Buffer: true,
        __filename: true,
        __dirname: true,
        setImmediate: true,
        path: true
    },
    externals: [externalsDep()], // in order to ignore all modules in node_modules folder
    ...
};

And that's it. Any node modules in dependencies will no longer be bundled but will be left as require('module').

Detailed overview

Description

This library scans the modules those install with --save,and builds an externals function that tells Webpack not to bundle those modules, or any sub-modules of theirs. You need run npm install before you deploy your app.

Configuration

This library accepts an options object.

options(=[])

You can parse transmit a array as parameter like this:

    externals: nodeExternals(['dependencies', 'devDependencies', 'peerDependencies', 'optionalDependencies'];)

All node modules will no longer be bundled but will be left as require('module').