halogen-websocket-ipc-playzone/README.md

57 lines
1.6 KiB
Markdown
Raw Normal View History

2016-01-18 22:17:22 +01:00
# purescript-halogen-template
This is a template for starting a fresh project using the [purescript-halogen](https://github.com/slamdata/purescript-halogen) library for declarative user interfaces.
## Prerequisites
This guide assumes you already have Git and Node.js installed with `npm` somewhere on your path.
In the PureScript ecosystem [Bower](http://bower.io/) is the most commonly used package manager and we'll be relying on it for this project, so if you don't already have it, you can install it like this:
``` shell
npm install --global bower
```
## Getting started
First clone the repo and step into it:
``` shell
git clone https://github.com/slamdata/purescript-halogen-template.git my-halogen-project
cd my-halogen-project
```
If you already have a global installation of the PureScript compiler and [Pulp](https://github.com/bodil/pulp), you can run:
``` shell
npm install --production
```
If you want to install a local copy of the PureScript compiler and Pulp then just run the usual:
``` shell
npm install
```
`npm install` is required for Halogen due to its dependency on `virtual-dom`. A postinstall script should have installed the remaining Bower dependencies.
## Building
The project can now be built with:
``` shell
npm run build
```
This will build the PureScript source code, run Browserify on the output, and produce a bundled JS file with `virtual-dom` and the PureScript-compiled JS as `dist/app.js`.
This is an alias for the Pulp command:
``` shell
pulp browserify --to dist/app.js
```
If you open `dist/index.html` you should now have a basic working Halogen app.
That's pretty much it. Have fun with Halogen!