{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE NoImplicitPrelude #-}

-- | Front-end
--
-- : exe ibb.js
--
-- : dep clay
-- : dep miso
-- : dep protolude
-- : dep servant
-- : dep text
-- : dep aeson
-- : dep containers
-- : dep ghcjs-base
module Biz.Ibb.Client where

import Alpha
import Biz.Ibb.Core
  ( Action (..),
    init,
    see,
  )
import Biz.Ibb.Move (move)
import Miso
  ( App (..),
    defaultEvents,
    miso,
  )

main :: IO ()
main = miso $ \u -> App {model = init u, ..}
  where
    initialAction = FetchPeople
    update = move
    view = see
    events = defaultEvents
    subs = []
    mountPoint = Nothing