29 lines
657 B
Haskell
29 lines
657 B
Haskell
{-# LANGUAGE DerivingVia #-}
|
|
|
|
module Lib
|
|
( runBothServers,
|
|
)
|
|
where
|
|
|
|
import ClassyPrelude
|
|
import Types.AppTypes
|
|
import Types.ConnectionState (initConnectionsState)
|
|
import Types.RoomsState (initRoomsState)
|
|
import WebServer (runWebServer)
|
|
import WebSocket.Server (runWebSocketServer)
|
|
|
|
runBothServers :: IO ()
|
|
runBothServers = do
|
|
connectedClientsState <- initConnectionsState
|
|
roomsState <- initRoomsState
|
|
|
|
let env =
|
|
Env
|
|
{ connectedClientsState = connectedClientsState,
|
|
profile = Dev,
|
|
roomsState = roomsState
|
|
}
|
|
|
|
_ <- concurrently (unApp runWebSocketServer env) (unApp runWebServer env)
|
|
return ()
|