{-# LANGUAGE DataKinds #-} {-# LANGUAGE TemplateHaskell #-} {-# LANGUAGE TypeOperators #-} {-# LANGUAGE OverloadedLabels #-} {-# LANGUAGE DuplicateRecordFields #-} module Lib ( startApp , app , type (:>) -- Syntax for importing type operator , type (:<|>) ) where -- Servant import Network.Wai import Network.Wai.Handler.Warp import Network.Wai.Middleware.RequestLogger (logStdoutDev) import Servant -- Utils import Cors -- Endpoints import Endpoints.APILib import Endpoints.ServerLib startApp :: IO () startApp = run 8080 (logStdoutDev app) app :: Application app = corsMiddleware $ serve api server api :: Proxy API api = Proxy