]> git.immae.eu Git - github/fretlink/purs-loader.git/blobdiff - README.md
Merge pull request #38 from ethul/topic/dependency-graph
[github/fretlink/purs-loader.git] / README.md
index 8a310d5fdff3598a483dd3062e10b891a4937a6c..0e1ce2fc1b1b5529409ca588a80d73b9da890cc8 100644 (file)
--- a/README.md
+++ b/README.md
@@ -4,7 +4,9 @@
 
 ## Install
 
-Install with [npm](https://npmjs.org/package/purs-loader)
+Install with [npm](https://npmjs.org/package/purs-loader).
+
+This loader works in conjunction with the [PureScript webpack plugin](https://npmjs.org/package/purescript-webpack-plugin). Ensure the plugin is installed and configured accordingly.
 
 ```
 npm install purs-loader --save-dev
@@ -12,71 +14,25 @@ npm install purs-loader --save-dev
 
 ## Options
 
-###### `noPrelude` (Boolean)
-
-Toggles `--no-prelude` that omits the Prelude.
-
-###### `noTco` (Boolean)
-
-Toggles `--no-tco` that disables tail-call optimizations.
-
-###### `noMagicDo` (Boolean)
-
-Toggles `--no-magic-do` that disables optimizations overloading the do keyword generating efficient code for the `Eff` monad.
-
-###### `noOpts` (Boolean)
-
-Toggles `--no-opts` that skips the optimization phase.
-
-###### `verboseErrors` (Boolean)
-
-Toggles `--verbose-errors` that displays verbose error messages.
-
-###### `comments` (Boolean)
+###### `bundleOutput` (String)
 
-Toggles `--comments` that includes comments in generated code.
-
-###### `output` (String)
-
-Sets `--output=<string>` the specifies the output directory, `output` by default.
-
-###### `noPrefix` (Boolean)
-
-Toggles `--no-prefix` that does not include the comment header.
-
-###### `requirePath` (String)
-
-Sets `--require-path=<string>` that specifies the path prefix to use for `require()` calls in the generated JavaScript.
-
-###### `ffi` (String Array)
-
-Specifies the PureScript FFI files setting `--ffi=<string>`. Glob syntax is supported. This option is specified as `ffi[]=path`.
-
-###### `src` (String Array)
-
-Specifies the PureScript source files. Glob syntax is supported. This option is specified as `src[]=path`.
+Relative path to the bundled JavaScript file generated by the `PurescriptWebpackPlugin`. The default value is `output/bundle.js`.
 
 ## Example
 
 ```js
 // webpack.config.js
+'use strict';
 
-var path = require('path');
-
-var srcs = ['src[]=bower_components/purescript-*/src/**/*.purs', 'src[]=src/**/*.purs'];
+var PurescriptWebpackPlugin = require('purescript-webpack-plugin');
 
-var ffis = ['ffi[]=bower_components/purescript-*/src/**/*.js'];
+var src = ['bower_components/purescript-*/src/**/*.purs', 'src/**/*.purs'];
 
-var output = 'output';
+var ffi = ['bower_components/purescript-*/src/**/*.js', 'src/**/*FFI.js'];
 
 var modulesDirectories = [
   'node_modules',
-  // The bower component for purescript-prelude is specified here to
-  // allow JavaScript files to require the 'Prelude' module globally.
-  'bower_components/purescript-prelude/src',
-  // The output directory is specified here to allow PureScript files in
-  // your source to import other PureScript modules in your source.
-  output
+  'bower_components'
 ];
 
 var config
@@ -86,12 +42,10 @@ var config
               , filename: 'bundle.js'
               }
     , module: { loaders: [ { test: /\.purs$/
-                           , loader: 'purs-loader?output=' + output + '&' + srcs.concat(ffis).join('&')
+                           , loader: 'purs-loader'
                            } ] }
-    , resolve: { modulesDirectories: modulesDirectories
-               , extensions: ['', '.js', '.purs']
-               }
-    , resolveLoader: { root: path.join(__dirname, 'node_modules') }
+    , resolve: { modulesDirectories: modulesDirectories }
+    , plugins: [ new PurescriptWebpackPlugin({src: src, ffi: ffi}) ]
     }
     ;