]> git.immae.eu Git - github/fretlink/purs-loader.git/blob - README.md
Refactor to compile independently of purescript-webpack-plugin.
[github/fretlink/purs-loader.git] / README.md
1 # purs-loader
2
3 > [PureScript](http://www.purescript.org) loader for [webpack](http://webpack.github.io)
4
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
8
9 ## Install
10
11 Install with [npm](https://npmjs.org/package/purs-loader).
12
13 ```
14 npm install purs-loader --save-dev
15 ```
16
17 ## Example
18
19 ```javascript
20 const webpackConfig = {
21 // ...
22 loaders: [
23 // ...
24 {
25 test: /\.purs$/,
26 loader: 'purs-loader',
27 exclude: /node_modules/,
28 query: {
29 psc: 'psa',
30 src: ['bower_components/purescript-*/src/**/*.purs', 'src/**/*.purs'],
31 ffi: ['bower_components/purescript-*/src/**/*.js', 'src/**/*.js'],
32 }
33 }
34 // ...
35 ]
36 // ...
37 }
38 ```
39
40 Default options:
41
42 ```javascript
43 {
44 psc: 'psc',
45 pscArgs: {},
46 pscBundle: 'psc-bundle',
47 pscBundleArgs: {},
48 pscIdeColors: false, // defaults to true if psc === 'psa'
49 bundleOutput: 'output/bundle.js',
50 bundleNamespace: 'PS',
51 bundle: false,
52 warnings: true,
53 output: 'output',
54 src: [
55 path.join('src', '**', '*.purs'),
56 path.join('bower_components', 'purescript-*', 'src', '**', '*.purs')
57 ],
58 ffi: [
59 path.join('src', '**', '*.js'),
60 path.join('bower_components', 'purescript-*', 'src', '**', '*.js')
61 ],
62 }
63 ```