3 > [PureScript](http://www.purescript.org) loader for [webpack](http://webpack.github.io)
5 - Supports hot-reloading and rebuilding of single source files
6 - Dead code elimination using the `bundle` option
7 - Colorized build output using `purescript-psa` and the `psc: "psa"` option
11 Install with [npm](https://npmjs.org/package/purs-loader).
14 // For PureScript 0.9 and newer
15 npm install purs-loader --save-dev
17 // Fore PureScript 0.8
18 npm install purs-loader@purescript-0.8 --save-dev
24 const webpackConfig = {
30 loader: 'purs-loader',
31 exclude: /node_modules/,
34 src: ['bower_components/purescript-*/src/**/*.purs', 'src/**/*.purs']
43 Refer to the [purescript-webpack-example](https://github.com/ethul/purescript-webpack-example) for a more detailed example.
53 pscBundle: 'psc-bundle',
55 pscIde: false, // instant rebuilds using psc-ide-server (experimental)
56 pscIdeArgs: {}, // for example, to use different psc-ide-server port: {port: 4088}
57 pscIdeServerArgs: {}, // for example, to change the port { port: 4088 }
58 pscIdeColors: false, // defaults to true if psc === 'psa'
59 bundleOutput: 'output/bundle.js',
60 bundleNamespace: 'PS',
65 path.join('src', '**', '*.purs'),
66 path.join('bower_components', 'purescript-*', 'src', '**', '*.purs')
71 ### Instant rebuilds (experimental)
73 Experimental support for instant rebuilds using `psc-ide-server` can be enabled
74 via the `pscIde: true` option.
75 You can use an already running `psc-ide-server` instance by specifying the port in `pscIdeArgs`,
76 if there is no server running this loader will start one for you.
79 #### Slower webpack startup after using purs-loader ?
81 By default, the psc-ide-server will be passed the globs from query.src, this is
82 helpful for other tools using psc-ide-server (for example IDE plugins), however
83 it might result in a slower initial webpack startup time (rebuilds are not
84 affected). To override the default behaviour, add:
85 `pscIdeServerArgs: { "_": ['your/*globs/here'] }` to the loader config