My Projects
Hexasperate
An open-source tile-matching puzzle game that you can play free online!
Hexasperate is written in Elm and licensed under the GPL 3.0. The source code is available on GitHub. All graphics and animations are implemented in SVG and CSS. There are alternate color palettes available and options to reduce motion.


PureScript Gesso
A PureScript library that makes
it easy to use <canvas>
graphics in
standalone applications or
Halogen components!
Gesso is licensed under the MIT License and the source code is available on GitHub.
Here’s a classic Hello World:
module Gesso.Example.Hello (main) where
import Effect (Effect)
import Gesso (launch)
import Gesso.Application (WindowMode(..), defaultBehavior)
import Gesso.Geometry (Scalers, null)
import Gesso.State (States)
import Gesso.Time (Delta)
import Graphics.Canvas (Context2D, fillText)
import Prelude (Unit, unit)
main :: Effect Unit
main = launch
{ name: "hello"
, initialState: unit
, viewBox: null
, window: Fullscreen
, behavior: defaultBehavior { render = render }
}
render :: Context2D -> Delta -> Scalers -> States Unit -> Effect Unit
render context _ _ _ =
fillText context "hello world" 500.0 500.0