generated at
PureScript & Halogenで最小のプロジェクトを作成する
PureScript & Halogenで最小のプロジェクトを作成する




前提
pursとspagoはglobalに入っているものとする
いずれもnpmでglobalに入れる
purtyも入れる

プロジェクト作成
$ mkdir hoge && cd hoge
$ spago init
$ git init
.gitignore init 時に自動で生成されているが、gitが初期化されていないので。
$ npm init -y
$ npm i parcel --save-dev


Halogenをインスコ
$ spago install halogen


PureScriptを書く
Halogen v6.1.2


Mainをコンパイルしてindex.jsにする
$ spago bundle-app -m Main -t assets/index.js


index.jsと同じ階層にindex.htmlを作成
$ vim assets/index.html
最小.html
<!DOCTYPE html> <html> <body> <div id="app"></div> <script src="index.js"></script> </body> </html>


gitignoreに追記する
.gitignore
.parcel-cache/ /dist /assets/index.js


package.jsonに追記
package.json
"scripts": { "watch": "spago bundle-app -w -m Main -t assets/index.js", "serve": "parcel serve assets/index.html --open", "test": "spago test" },


ブラウザで表示
$ npm run watch
別ターミナルで、 $ npm run serve
これを実行しておくと、hot reloadしてくれる
表示されているURLにアクセス!



最終的なディレクトリ構成はこんな感じ
dir
. ├── assets │ ├── index.html │ └── index.js ├── dist ├── hoge.txt ├── node_modules ├── output ├── package-lock.json ├── package.json ├── packages.dhall ├── README.md ├── spago.dhall ├── src │ └── Main.purs └── test └── Main.purs