Webpack-dev-server Incremental Build time too slow, 45-60 seconds, how to shorten?

Initial build takes 45 seconds, and incremental builds also take 45 seconds. How can I get incremental build to speed it? It always rebundles angular2 modules and core-js which is taking it so long.

Webpack.common.js

/**
 * @author: @AngularClass
 * For more info on Webpack Hot module Replacement (HMR), go to :
 * http://andrewhfarmer.com/understanding-hmr/
 */

/*
 * Webpack Plugins & Required Modules
 */
var CopyWebpackPlugin = (CopyWebpackPlugin = require('copy-webpack-plugin'), CopyWebpackPlugin.default || CopyWebpackPlugin);
//const CopyWebpackPlugin = require( 'copy-webpack-plugin' );
const HtmlWebpackPlugin = require('html-webpack-plugin');
const ForkCheckerPlugin = require('awesome-typescript-loader').ForkCheckerPlugin;
const autoprefixer = require('autoprefixer');
const ExtractTextPlugin = require("extract-text-webpack-plugin");
const path = require('path');
const HappyPack = require('happypack');
const happyThreadPool = HappyPack.ThreadPool({ size: 5 });
//const VSFixSourceMapsPlugin = require('vs-fix-sourcemaps');

/*
 * Webpack Constants
 */

const ENV = process.env.NODE_ENV;
const DEBUG = ENV !== 'production' ? true : false;
const webpack = require('webpack');
const helpers = require('./helpers');
const METADATA = {
  host: 'localhost',
  port: 4000,
  dotnetport: 5000,
  title: 'Angular2 Webpack Starter',
  baseUrl: '/',
  ENV: ENV

};
const happyPackTempDir = '../cache/happypack';





/*
 * Webpack configuration
 *
 * See: http://webpack.github.io/docs/configuration.html#cli
 */
module.exports = {

  /**
   * In order to ignore all modules in node_modules folder
   */
  //externals: [nodeExternals({
  //     // this WILL include `jquery` and `webpack/hot/dev-server` in the bundle, as well as `lodash/*`
  //  whitelist: [
  //    '@angular',
  //    '@angular2-material',
  //    'core-js',
  //    'webpack/hot/dev-server',
  //    'rxjs',
  //    'zone.js',
  //    'ng2-table',
  //    ///^lodash/
  //  ]
  //})],

  /*
   * Static metadata for index.html
   *
   * See: (custom attribute)
   */
  metadata: METADATA,

  /*
   * Cache generated modules and chunks to improve performance for multiple incremental builds.
   * This is enabled by default in watch mode.
   * You can pass false to disable it.
   *
   * See: http://webpack.github.io/docs/configuration.html#cache
   */

  cache: true,

  /*
   * The entry point for the bundle
   * Our Angular.js app
   *
   * See: http://webpack.github.io/docs/configuration.html#entry
   */
  entry: {
    // Entry points for webpack bundles
    'main': './src/webpack.entry.bundle.ts',
    'app': './src/app.bootstrap.ts'

    /*
     *  Webpack dev server gets loaded by webpack-dev-server CLI, DO NOT include it here
     */
    //' webpack-dev-server': 'webpack-dev-server/client?http://' + METADATA.host + ':' + METADATA.port + '/', // WebpackDevServer host and port
    //' webpack-hot-module-replacement': 'webpack/hot/dev-server' // normal webpage dev server - use either this or "hot/only-dev-server"
    //' webpack-hot-only-module-replacement': 'webpack/hot/only-dev-server', // "only-" prevents reload on syntax errors

  },

  /*
   * Options affecting the resolving of modules.
   *
   * See: http://webpack.github.io/docs/configuration.html#resolve
   */
  resolve: {

    /*
     * An array of extensions that should be used to resolve modules.
     *
     * IMPORTANT: Setting this option will override the default, meaning that webpack will no longer
     * try to resolve modules using the default extensions. If you want modules that were required with
     * their extension (e.g. require('./somefile.ext')) to be properly resolved, you must include an empty
     * string in your array. Similarly, if you want modules that were required without extensions
     * (e.g. require('underscore')) to be resolved to files with “.js” extensions, you must include
     * ".js" in your array.
     *
     * See: http://webpack.github.io/docs/configuration.html#resolve-extensions
     */
    extensions: ['', '.ts', '.js', '.scss', '.css', '.html'],

    // Make sure root is src
    root: helpers.root('src'),

    // remove other default values
    modulesDirectories: ['node_modules'],
    // For enable webpack to resolve in multiple package directories:
    //modulesDirectories: ["web_modules", "node_modules", "bower_components"],

    alias: {
      // legacy imports pre-rc releases
      'angular2': helpers.root('node_modules/@angularclass/angular2-beta-to-rc-alias/dist/beta-17')
    }

  },

  /*
   * Options affecting the normal modules.
   *
   * See: http://webpack.github.io/docs/configuration.html#module
   */
  module: {

    /*
     * An array of applied pre and post loaders.
     *
     * See: http://webpack.github.io/docs/configuration.html#module-preloaders-module-postloaders
     */
    preLoaders: [

      /*
       * Tslint loader support for *.ts files
       *
       * See: https://github.com/wbuchwalter/tslint-loader
       */
      // { test: /\.ts$/, loader: 'tslint-loader', exclude: [ helpers.root('node_modules') ] },

      {
        test: /\.ts$/,
        loader: 'awesome-typescript-loader',
        exclude: [/\.(spec|e2e)\.ts$/],
      },

      /*
       * Source map loader support for *.js files
       * Extracts SourceMaps for source files that as added as sourceMappingURL comment.
       *
       * See: https://github.com/webpack/source-map-loader
       */
      {
        test: /\.js$/,
        //loader: 'source-map-loader',
        loader: 'happypack/loader?id=js',
        exclude: [
          // these packages have problems with their sourcemaps
          helpers.root('node_modules/rxjs'),
          helpers.root('node_modules/@angular2-material'),
          helpers.root('node_modules/@angular')
        ],
        //happy: { id: 'js' } // HappyPack middleware - doesnt work to "infer" the loader on preloaders, define manually in Webpack Plugins section

      }
    ],

    /*
     * An array of automatically applied loaders.
     *
     * IMPORTANT: The loaders here are resolved relative to the resource which they are applied to.
     * This means they are not resolved relative to the configuration file.
     *
     * See: http://webpack.github.io/docs/configuration.html#module-loaders
     */
    loaders: [

      /*
       * Typescript loader support for .ts and Angular 2 async routes via .async.ts
       *
       * See: https://github.com/s-panferov/awesome-typescript-loader
       */
      {
        test: /\.ts$/,
        exclude: [/\.(spec|e2e)\.ts$/],
        loader: 'awesome-typescript-loader',
        //loaders: ['happypack/loader?id=ts'],
        //happy: { id: 'ts' } // HappyPack middleware
      },

      /*
       * Json loader support for *.json files.
       *
       * See: https://github.com/webpack/json-loader
       */
      {
        test: /\.json$/,
        loader: 'json-loader',
        happy: { id: 'json' } // HappyPack middleware

      },

      /*
       * Raw loader support for *.css files
       * Returns file content as string
       *
       * See: https://github.com/webpack/raw-loader
       */
      {
        test: /\.css$/,
        loader: 'raw-loader',
        //loader: 'style/url!file?name=assets/css/[name].[sha512:hash:base64:7].css',
        //happy: { id: 'css' } // HappyPack middleware

      },

      /*
       * Raw loader support for *.html files
       * Returns file content as string
       *
       * See: https://github.com/webpack/raw-loader
       */
      {
        test: /\.html$/,
        loader: 'raw-loader',
        exclude: [helpers.root('src/index.html')],
        happy: { id: 'html' } // HappyPack middleware

      },

      /*
      * Embed small png images as data urls and jpg images as files.
      */
      {
        test: /\.png$/,
        loader: "url-loader?limit=100000",
        happy: { id: 'png' } // HappyPack middleware

      },
      {
        test: /\.jpg$/,
        loader: "file-loader",
        happy: { id: 'jpg' } // HappyPack middleware

      },

      // example of how to match multiple extensions
      // test: /\.(png|jpg|woff|woff2)$/,

      /*
       * SASS loader support for *.scss files
       *
       * See: https://github.com/webpack/raw-loader
       */
      {
        test: /\.scss$/,
        exclude: /node_modules/,
        happy: { id: 'scss' }, // HappyPack middleware
        //include: [helpers.root( 'src/app/styles' )]

        //loader: 'happypack/loader?id=scss'

        loaders: ['style', 'css?sourceMap', 'postcss', 'sass?sourceMap', 'sass-resources']

        // Conditional based on developement/production environment

        //loaders: DEBUG ? ['style', 'css?sourceMap', 'sass?sourceMap&sourceComments']
        //               : ['style/url', 'file?name=/assets/css/[name].compiled.[sha512:hash:base64:7].css', 'sass?sourceMap&sourceComments']

        //loader: DEBUG ? 'style!css?sourceMap!sass?sourceMap&sourceComments'
        // : ExtractTextPlugin.extract(['css?sourceMap', 'sass?sourceMap&sourceComments'])

        /**
         *
         * What this basically says is:
         * (Read from right to left)
         *
         * 1) First look for any file ending in .scss  (based on test regex pattern above)
         *
         * 2) Then load the "sass-resources" and @import all mixins and variables from into each .scss file.
         * See: https://github.com/shakacode/sass-resources-loader
         *
         * 3) Then load "sass-loader" and compile the sass and generate sourcemaps.
         * Sass-loader pipes that output of compiled sass to the "file-loader".
         * See: https://github.com/jtangelder/sass-loader
         *
         * 4) File-loader prepends assets/css before the file and then renames the file to [name].compiled.[hash].css. This means the output is
         * assets/css/[name].compiled.[hash].css. The path to the public url is returned as output. File-loader pipes the output to "style-loader".
         * See: https://github.com/webpack/file-loader
         *
         * Finally because we specified "style/url", "style-loader" takes the public url, creates a <link> tag with the href= to the URL output from file-loader, and appends that to the <head>
         * Example: <link rel="stylesheet" type="text/css" href="http://localhost:4000/assets/css/about.compiled.1ye2TBV.css">
         * See: https://github.com/webpack/style-loader
         *
         * If we specified "style" without the "/url" part, instead of creating an external css <link> tag, it will embed the css directly into the <head>
         * inside of a <style>...</style> tag.
         *
         * Note: The "-loader" part of each of the loaders is optional. So you can write "file-loader" or "file", "sass-loader" or "sass", etc.
         *
         */
      },

      /*
      * Font woff Loaders.
      */
      {
        test: /\.woff(2)?(\?v=[0-9]\.[0-9]\.[0-9])?$/,
        loader: 'url-loader?limit=10000&mimetype=application/font-woff!file-loader?name=/assets/fonts/[name].[ext]'
      },

      /*
      * Font ttf|otf|eot|svg Loaders.
      */
      {
        test: /\.(ttf|otf|eot|svg)(\?v=[0-9]\.[0-9]\.[0-9])?|(jpg|gif)$/,
        loader: 'file-loader?name=/assets/fonts/[name].[ext]'
      },

      // Bootstrap 4 - Used to serve jQuery for Bootstrap scripts:

      {
        test: /bootstrap[\/\\]dist[\/\\]js[\/\\]umd[\/\\]/,
        loader: 'imports?jQuery=jquery'
      },

    ],


    //# don't parse some dependencies to speed up build.
    //# can probably do this non-AMD/CommonJS deps
    //noParse: [
    //  path.join(nodeModulesRoot, '@angular'),
    //  path.join(nodeModulesRoot, '@angular2-material'),
    //]
  },

  postcss: function () {
    return [autoprefixer];
  },

  sassResources: ['./src/assets/styles/shared/variables.scss', './src/assets/styles/shared/mixins.scss'],

  /*
   * Add additional plugins to the compiler.
   *
   * See: http://webpack.github.io/docs/configuration.html#plugins
   */
  plugins: [


  //new webpack.IgnorePlugin(/@angular/),

  new HappyPack({
    id: 'js',
    loaders: ['source-map-loader'],
    threadPool: happyThreadPool,
    tempDir: happyPackTempDir
  }),

  new HappyPack({ id: 'json', threadPool: happyThreadPool, tempDir: happyPackTempDir }),
  new HappyPack({ id: 'html', threadPool: happyThreadPool, tempDir: happyPackTempDir }),
  new HappyPack({ id: 'jpg', threadPool: happyThreadPool, tempDir: happyPackTempDir }),
  new HappyPack({ id: 'png', threadPool: happyThreadPool, tempDir: happyPackTempDir }),
  new HappyPack({ id: 'scss', threadPool: happyThreadPool, tempDir: happyPackTempDir }),
  //new HappyPack({ id: 'ts', threadPool: happyThreadPool, tempDir: happyPackTempDir }),
  //new HappyPack({ id: 'css', threadPool: happyThreadPool, tempDir: happyPackTempDir }),
  //new HappyPack({
  //  id: 'scss',
  //  threadPool: happyThreadPool,
  //  loaders: ['style', 'css?sourceMap', 'sass?sourceMap&sourceComments'],
  //  tempDir: happyPackTempDir

  //  //loaders: DEBUG
  //  //           ? ['style', 'css?sourceMap', 'sass?sourceMap&sourceComments']
  //  //           : ['style/url', 'file?name=/assets/css/[name].compiled.[sha512:hash:base64:7].css', 'sass?sourceMap&sourceComments']
  //}),

 /*
  * Plugin: ExtractTextPlugin
  * Extracts text into external css file
  *
  * See:
  */

  //new ExtractTextPlugin('assets/css/[name].css'),

  /*
  * Plugin: UglifyJsPlugin
  * Fix Webpack JSX and JS Sourcemaps in Visual Studio
  *
  * See:
  */

  //new webpack.optimize.UglifyJsPlugin({ compress: { warnings: false } }),

  /*
   * Plugin: VSFixSourceMapsPlugin
   * Fix Webpack JSX and JS Sourcemaps in Visual Studio
   *
   * See: https://github.com/joevbruno/vs-fix-sourcemaps
   */

  //new VSFixSourceMapsPlugin(),

  /*
   * Plugin: ForkCheckerPlugin
   * Description: Do type checking in a separate process, so webpack don't need to wait.
   *
   * See: https://github.com/s-panferov/awesome-typescript-loader#forkchecker-boolean-defaultfalse
   */
  new ForkCheckerPlugin(),

  /*
   * Plugin: OccurenceOrderPlugin
   * Description: Varies the distribution of the ids to get the smallest id length
   * for often used ids.
   *
   * See: https://webpack.github.io/docs/list-of-plugins.html#occurrenceorderplugin
   * See: https://github.com/webpack/docs/wiki/optimization#minimize
   */
  new webpack.optimize.OccurenceOrderPlugin(true),

  /*
   * Plugin: CommonsChunkPlugin
   * Description: Shares common code between the pages.
   * It identifies common modules and put them into a commons chunk.
   *
   * See: https://webpack.github.io/docs/list-of-plugins.html#commonschunkplugin
   * See: https://github.com/webpack/docs/wiki/optimization#multi-page-app
   */

  //new webpack.optimize.CommonsChunkPlugin({
  //  name: ['polyfills', 'vendor'].reverse()
  //}),

  /*
   * Plugin: HtmlWebpackPlugin
   * Description: Simplifies creation of HTML files to serve your webpack bundles.
   * This is especially useful for webpack bundles that include a hash in the filename
   * which changes every compilation.
   *
   * See: https://github.com/ampedandwired/html-webpack-plugin
   */
  new HtmlWebpackPlugin({
    template: 'src/_Layout.cshtml',
    //chunksSortMode: helpers.packageSort( ['polyfills', 'vendor', 'main'] ),
    chunksSortMode: 'dependency',
    hash: true, // creates ?[hash], such as: main.bundle.js?62cd29765a7e959d0fe5
    filename: '_Layout.cshtml',
    environment: process.env.NODE_ENV
  }),

  /*
   * Plugin: CopyWebpackPlugin
   * Description: Copy files and directories in webpack.
   *
   * Copies project static assets.
   *
   * See: https://www.npmjs.com/package/copy-webpack-plugin
   */
  new CopyWebpackPlugin(
    [
      // Using npm copyfiles to do this since it would not copy the files when paired with a prebuild:dev "clean:wwwroot" command
      // { from: 'wwwroot/_Layout.cshtml', to: '../Views/Shared', force: true },
      {
        from: 'src/assets',
        to: 'assets',
        force: true
      }
    ],
    {
      ignore: [
        // Doesn't copy any files with a txt extension
        //'*.txt',

        // Doesn't copy any file, even if they start with a dot
        //{ glob: '**/*', dot: true }
      ],

      // By default, we only copy modified files during
      // a watch or webpack-dev-server build. Setting this
      // to `true` copies all files.
      copyUnmodified: false
    }),
/*
 * Plugin: Fetch.js
 * Description: Request represents a HTTP request to be performed via fetch().
 *
 * The global fetch function is an easier way to make web requests and handle responses than using an
 * XMLHttpRequest. This polyfill is written as closely as possible to the standard Fetch specification at.
 *
 * See: https://fetch.spec.whatwg.org
 */
  new webpack.ProvidePlugin({
    'Promise': 'imports?this=>global!exports?global.Promise!es6-promise',
    'fetch': 'imports?this=>global!exports?global.fetch!whatwg-fetch'
  }),

/*
 * Plugin: Underscore.js
 * Description: A JavaScript library that provides useful functional programming helpers.
 *
 * Underscore provides over 100 functions that support both your favorite workaday functional helpers: map,
 * filter, invoke — as well as more specialized goodies: function binding, javascript templating, creating
 * quick indexes, deep equality testing, and so on.

 *
 * See: http://underscorejs.org/
 */
  new webpack.ProvidePlugin({
    "_": "underscore"
  }),

/*
 * Plugin: jQuery.js
 * Description: A JavaScript library for DOM manipulation.
 *
 * jQuery is a fast, small, and feature-rich JavaScript library. It makes things like HTML document traversal
 * and manipulation, event handling, animation, and Ajax much simpler with an easy-to-use API that works across
 * a multitude of browsers. With a combination of versatility and extensibility, jQuery has changed the way that
 * millions of people write JavaScript.

 *
 * See: http://jquery.com/
 */
  new webpack.ProvidePlugin({
    "$": "jquery"
  }),

/*
 * Plugin: Tether.js
 * Description: A positioning engine to make overlays, tooltips and dropdowns better.
 *
 * Tether is a small, focused JavaScript library for defining and managing the position
 * of user interface (UI) elements in relation to one another on a web page. It is a tool
 * for web developers building features that require certain UI elements to be precisely
 * positioned based on the location of another UI element.

 *
 * See: https://github.com/HubSpot/tether
 * See: http://tether.io/
 */
  new webpack.ProvidePlugin({
    "window.Tether": "tether"
  }),
  ],

  /*
   * Include polyfills or mocks for various node stuff
   * Description: Node configuration
   *
   * See: https://webpack.github.io/docs/configuration.html#node
   */
  node:
    {
      global: 'window',
      crypto:
        'empty',
      module:
        false,
      clearImmediate:
        false,
      setImmediate:
        false
    }
},

  console.log();

console.log("\n \n==================================================");
if (ENV === "development") {
  console.log("            Building for DEVELOPMENT");
  console.log("            DEBUG: " + DEBUG);
} else if (ENV === "production") {
  console.log("            Building for PRODUCTION");
  console.log("            DEBUG: " + DEBUG);
} else {
  console.log("            NODE_ENV not set!");
}
console.log("==================================================\n \n");


Webpack.development.js

/**
 * @author: @AngularClass
 */

const helpers = require('./helpers');
const webpackMerge = require('webpack-merge'); // used to merge webpack configs
const commonConfig = require('./webpack.common.js'); // the settings that are common to prod and dev
//const webpack = require('webpack');

/**
 * Webpack Plugins
 */
const DefinePlugin = require('webpack/lib/DefinePlugin');

/**
 * Webpack Constants
 */
const ENV = process.env.NODE_ENV;
const HMR = helpers.hasProcessFlag('hot');
const METADATA = webpackMerge(commonConfig.metadata,
{
  host: 'localhost',
  port: 4000,
  dotnetport: 5000,
  ENV: ENV,
  HMR: HMR
});


/**
 * Webpack configuration
 *
 * See: http://webpack.github.io/docs/configuration.html#cli
 */
module.exports = webpackMerge(commonConfig,
{
  cache: true,

  /**
   * Merged metadata from webpack.common.js for index.html
   *
   * See: (custom attribute)
   */
  metadata: METADATA,

  /**
   * Switch loaders to debug mode.
   *
   * See: http://webpack.github.io/docs/configuration.html#debug
   */
  debug: true,

  /**
   * Developer tool to enhance debugging
   *
   * See: http://webpack.github.io/docs/configuration.html#devtool
   * See: https://github.com/webpack/docs/wiki/build-performance#sourcemaps
   */
  //devtool: 'cheap-module-source-map',
  //devtool: 'inline-source-map',
  //devtool: 'eval-cheap-source-map',
  //devtool: 'inline-eval-cheap-source-map',
    devtool: 'source-map',


  /**
   * Options affecting the output of the compilation.
   *
   * See: http://webpack.github.io/docs/configuration.html#output
   */
  output: {

    /**
     * The output directory as absolute path (required).
     *
     * See: http://webpack.github.io/docs/configuration.html#output-path
     */
    path: helpers.root('wwwroot'),

    /**
     * Specifies the name of each output file on disk.
     * IMPORTANT: You must not specify an absolute path here!
     *
     * See: http://webpack.github.io/docs/configuration.html#output-filename
     */
    filename: '[name].bundle.js',

    /**
     * The filename of the SourceMaps for the JavaScript files.
     * They are inside the output.path directory.
     *
     * See: http://webpack.github.io/docs/configuration.html#output-sourcemapfilename
     */
    sourceMapFilename: '[name].map',

    /** The filename of non-entry chunks as relative path
     * inside the output.path directory.
     *
     * See: http://webpack.github.io/docs/configuration.html#output-chunkfilename
     */
    chunkFilename: '[id].[chunkhash].chunk.js',


    /* publicPath is where you want Webpack to make requests.
     * For example, when running webpack-dev-server on a different port than your main app
     *
     */
    //publicPath: 'http://localhost:4000/'
    publicPath: 'http://' + METADATA.host + ':' + METADATA.port + '/'
    // must end in a trailing forward slash or assets cannot be requested

  },

  plugins: [

    /**
     * Plugin: DefinePlugin
     * Description: Define free variables.
     * Useful for having development builds with debug logging or adding global constants.
     *
     * Environment helpers
     *
     * See: https://webpack.github.io/docs/list-of-plugins.html#defineplugin
     */
    // NOTE: when adding more properties, make sure you include them in custom-typings.d.ts
    new DefinePlugin({
      'ENV': JSON.stringify(METADATA.ENV),
      'HMR': METADATA.HMR,
      'process.env': {
        'ENV': JSON.stringify(METADATA.ENV),
        'NODE_ENV': JSON.stringify(METADATA.ENV),
        'HMR': METADATA.HMR
      }
    })

    // DO NOT use this when using Web-dev-server CLI or it will cause errors
    //,new webpack.HotModuleReplacementPlugin()
  ],

  /**
   * Static analysis linter for TypeScript advanced options configuration
   * Description: An extensible linter for the TypeScript language.
   *
   * See: https://github.com/wbuchwalter/tslint-loader
   */
  tslint: {
    emitErrors: false,
    failOnHint: false,
    resourcePath: 'src'
  },

  /**
   * Webpack Development Server configuration
   * Description: The webpack-dev-server is a little node.js Express server.
   * The server emits information about the compilation state to the client,
   * which reacts to those events.
   *
   * These options can be used in combination with the CLI (Command line interface) flags.
   * However, they may conflict, so be careful. Also, some options only work on the CLI, not in
   * the config here.
   *
   * See: https://github.com/webpack/docs/wiki/webpack-dev-server#hot-module-replacement
   * See: https://github.com/webpack/docs/wiki/webpack-dev-server#webpack-dev-server-cli
   * See: https://webpack.github.io/docs/webpack-dev-server.html
   */
  devServer: {
    outputPath: helpers.root('wwwroot'),
    port: METADATA.port,
    host: METADATA.host,
    noInfo: true, // Display no info to console (only warnings and errors)

    //progress: true,
    //lazy: false, // No watching, compiles on request (cannot be combined with --hot).
    //quiet: false, // Display nothing to the console

    //compress: false, // Set this if you want to enable gzip compression for assets
    //headers: { 'Access-Control-Allow-Origin': 'http://' + METADATA.host + ':' + METADATA.dotnetport },


    // Set this if you want webpack-dev-server to delegate a single path to an arbitrary server.
    // Use "*" to proxy all paths to the specified server.
    // This is useful if you want to get rid of 'http://localhost:8080/' in script[src],
    // and has many other use cases (see https://github.com/webpack/webpack-dev-server/pull/127 ).

    //proxy: [
    //  {
    //    // proxy all requests not containing ".hot-update.js"
    //    //path:    /^(?!.*\.hot-update\.js)(.*)$/,

    //    // proxy all requests not containing "api"
    //    path: 'api',
    //    target: 'http://localhost:5000/api'
    //  }
    //],
    //proxy: {
    //  "*": 'http://' + METADATA.host + ':' + METADATA.dotnetport + '/api/' // must end in a trailing forward slash or assets cannot be requested
    //},

    watchOptions: {
      aggregateTimeout: 300,
      poll: 1000
    },

    stats: {
      colors: true,
    }

  },

  /*
   * Include polyfills or mocks for various node stuff
   * Description: Node configuration
   *
   * See: https://webpack.github.io/docs/configuration.html#node
   */
  node: {
    global: 'window',
    crypto: 'empty',
    process: true,
    module: false,
    clearImmediate: false,
    setImmediate: false
  }

});


Author: Fantashit

1 thought on “Webpack-dev-server Incremental Build time too slow, 45-60 seconds, how to shorten?

  1. The comments in this file are ridiculous. They make it unreadable. Why is their a paragraph on what jQuery is?

Comments are closed.