Learn purescript-halogen
, (v5.0.0-rc.5
) from a bottom-up approach
Before learning Halogen via this project, you will need to install the following. (If you don't have them already installed, see my purescript learning repo's Install Guide
- purescript (v0.13.6)
- spago (v0.14.0)
- parcel (v1.12.4)
Or, to install them in one line
npm i -g purescript@0.13.6 spago@0.14.0 parcel
Or, instead of install globally, install relatively to this project
npm i
If you choose this approach, all aftermentioned commond like spago ...
and parcel ...
shall be prefix with npm run
. e.g.
npm run spago bundle-app -m ...
npm run parcel serve ...
Required: You are already familiar with...
- PureScript's "Basic" syntax. (If not, see my Basic Syntax overview)
- PureScript's "Module" syntax. (If not, see my Module Syntax overview)
- the
purescript-prelude
library. (If not, see my Prelude-ish folder) - "smart constructors." (If not, read my explanation on Smart Constructors)
- the
Effect
andAff
types and how they work. (If not, see my Effect and Aff folder)
Helpful, but not absolutely necessary: You are already familiar with...
- the philosophical foundations of Functional Programming. (If not, see my FP Philosophical Foundations Overview)
- PureScript's "Type-Level Programming" syntax. (If not, see my Type-Level Programming Syntax overview)
- "do notation." (If not, see my overview on Do Notation. Specifically,
Discard.md
toReading Do as Nested Binds.md
) - monad transformers and how they work. (If not, see my Application Structure folder. Specifically, the
MTL
folder.)
- Git clone this project
- Run
spago build
- Run
spago docs --open
- Read through each folder using the same rules that I use in my learning repo (described in the third bullet point here).
Don't want to clone-and-play? Then read through this repo using the Table of Contents file.
This project is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International license
: (Human-readable version), (Actual License)