1 const join = require('path').resolve
2 const webpack = require('webpack')
5 context: join(__dirname, '..'),
9 // Large 3rd-party libs
13 'prismjs/plugins/line-highlight/prism-line-highlight.min.js',
14 'prismjs/components/prism-jsx.min.js',
15 'prismjs/components/prism-bash.min.js',
16 'prismjs/components/prism-scss.min.js',
17 'prismjs/components/prism-css.min.js',
18 'prismjs/components/prism-elixir.min.js',
19 'prismjs/components/prism-ruby.min.js',
22 'prismjs/plugins/line-highlight/prism-line-highlight.css',
23 'hint.css/hint.min.css'
27 path: join(__dirname, '..', 'assets', 'packed'),
28 filename: '[name].js',
29 devtoolModuleFilenameTemplate: 'webpack:///[absolute-resource-path]'
35 exclude: /node_modules/,
37 { loader: 'babel-loader' }
43 { loader: 'style-loader' },
44 { loader: 'css-loader' }
51 // Never bundle jQuery
52 'jquery': join(__dirname, '..', '_js/helpers/noop.js')
57 // Optimize module ID's for vendor chunks
58 new webpack.HashedModuleIdsPlugin({
59 hashFunction: 'sha256',
65 new webpack.optimize.CommonsChunkPlugin('vendor'),
67 // Don't include debug symbols ever
68 new webpack.EnvironmentPlugin({
69 NODE_ENV: 'production'