Cookie-based session management for the Simple web framework

LTS Haskell 11.1:
Stackage Nightly 2018-03-12:
Latest on Hackage:

See all snapshots simple-session appears in

LGPL-3 licensed by Amit Aryeh Levy
Maintained by

Module documentation for

Adds cookie-based session management to simple Controllers. To add to an application, declare the Controller setting's type an instance of HasSession, and wrap routes with withSession. For example:

data AppSettings = ...

instance HasSession AppSettings where
controllerApp settings $ withSessions $ do
  routeName \"posts\" $ ...

Then, in your controllers you can seemlessly get and set keys from the session:

get "/profile" $ do
  muserId <- sessionLookup "current_user_id"
  case muserIf of
    Nothing -> respond $ redirectTo "/login"
    Just userId -> [handle request]


Version (2015-11-18)

  • Default to using httponly cookie option

  • Default to using secure cookie option for requests over HTTPS

  • Allow customization of cookie options using the sessionBaseCookie method

comments powered byDisqus