{-# LANGUAGE NoMonomorphismRestriction#-} {-# LANGUAGE NoImplicitPrelude #-} {-# LANGUAGE QuasiQuotes #-} module Bamboo ( module Bamboo.Controller.Application, bamboo ) where import Bamboo.Controller.Application (paths) import Hack.Handler.Hyena import Hack.Utils import Hack import Hack.Contrib.RawRouter import Hack.Contrib.ContentType import Hack.Contrib.ContentSize import Hack.Contrib.SimpleAccessLogger import Hack.Contrib.ShowExceptions import Hack.Contrib.File import Hack.Contrib.Static import Hack.Contrib.ShowStatus import Hack.Contrib.Lucky import qualified Hack.Contrib.Head as H import Bamboo.Helper.Env hiding (body, not_found, (>)) default_content_type = "text/plain; charset=UTF-8" middleware_stack = [ dummy_middleware -- completeness , content_size , content_type default_content_type -- debuging , show_exceptions Nothing , show_status -- optimization , H.head -- logger -- , simple_access_logger Nothing -- dispatch -- static serve , lucky , static (Just "db/public") ["/theme", "/images", "/plugin", "/favicon.ico"] -- real app , route paths ] app = dummy_app .use middleware_stack bamboo :: IO () bamboo = run app