- GHC, cabal – compiler and package manager
- Matrix – storing and manipulating board data
- Scotty – back-end web engine
- Blaze.Html – writing HTML templates
- Wai.Middleware.Static – applying CSS and attaching favicon
Setup your Haskell environment (e. g. using GHCup):
- cabal 3.10.2.1+
- GHC 9.4.8+ (base ^>=4.17.2.1)
Next clone this repository, run the application
$ git clone https://github.com/NSUSpray/tic-tac-toe
$ cd tic-tac-toe
$ cabal run
and wait for the message
Setting phasers to stun... (port 3000) (ctrl-c to quit)
Then open your browser and enter in the address bar http://localhost:3000/
Execute in your shell
$ cabal test --test-show-details=direct
or
$ cabal run tic-tac-toe-test
--test-show-details=direct means that test case results will be sent in real time; no log file.