Skip to content

Generator un-minified JavaScript files along with UglifyJsPlugin.

License

Notifications You must be signed in to change notification settings

tine20/unminified-webpack-plugin

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

unminified-webpack-plugin

NPM version

A webpack plugin for generating un-minified JavaScript files along with UglifyJsPlugin.

This plugin should only be used while you are developing standalone library

Why unminified-webpack-plugin

Maybe you are encountering the same issue as mine, once you are developing a standalone library via webpack, it's not possible to generate the uncompressed file along with the minified version at one time. Here is the question i found at stackoverflow, it seems many people are suffering for this.

As a workaround, you may do something like webpack && webpack --config webpack.config.prod.js, but the solution is really ugly and inelegant.

That's why i am here! ^^

Installation

npm install --save-dev unminified-webpack-plugin

Usage

var path = require('path');
var webpack = require('webpack');
var UnminifiedWebpackPlugin = require('unminified-webpack-plugin');

module.exports = {
    entry: {
        index: './src/index.js'
    },
    output: {
        path: path.resolve(__dirname, 'dist'),
        filename: 'library.min.js'
    },
    plugins: [
        new webpack.optimize.UglifyJsPlugin({
            compress: {
                warnings: false
            }
        }),
        new UnminifiedWebpackPlugin()
    ]
};

By doing as above, you will get two files library.min.js and library.js. No need execute webpack twice, it just works!^^

Note: Does not work with BannerPlugin, see this comment for an explanation.

Configuration

postfix: you can specify the nomin part as you wish. nomin is the default postfix once you haven't specify min in output.filename. And it can be customized by specifying this option, following is example:

var path = require('path');
var webpack = require('webpack');
var UnminifiedWebpackPlugin = require('unminified-webpack-plugin');

module.exports = {
    entry: {
        index: './src/index.js'
    },
    output: {
        path: path.resolve(__dirname, 'dist'),
        filename: 'library.js'//no "min" specified
    },
    plugins: [
        new webpack.optimize.UglifyJsPlugin({
            compress: {
                warnings: false
            }
        }),
        new UnminifiedWebpackPlugin({
            postfix: 'unmin'//specify "nomin" postfix
        })
    ]
};

By doing as above, you will get two files library.js and library.unmin.js

LICENSE

MIT License

About

Generator un-minified JavaScript files along with UglifyJsPlugin.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 100.0%