Name: wai-routes Version: 0.3.4 Synopsis: Typesafe URLs for Wai applications. Homepage: https://github.com/ajnsit/wai-routes License: MIT License-file: LICENSE Author: Anupam Jain Maintainer: ajnsit@gmail.com Build-Type: Simple Cabal-Version: >=1.6 stability: Experimental Category: Network Extra-source-files: README.md, examples/Example.hs Description: Provides easy to use typesafe URLs for Wai Applications. . Sample usage follows (See examples/Example.hs in the source bundle for the full code) - . @ {-# LANGUAGE OverloadedStrings, TypeFamilies #-} . import Network.Wai import Network.Wai.Middleware.Routes . import Data.IORef . -- The Site Argument data MyRoute = MyRoute (IORef DB) . -- Generate Routes mkRoute "MyRoute" [parseRoutes| / UsersR GET /user/#Int UserR: / UserRootR GET /delete UserDeleteR POST |] . -- Define Handlers -- All Users Page getUsersR :: Handler MyRoute getUsersR (MyRoute dbref) request = ... -- Single User Page getUserRootR :: Int -> Handler MyRoute getUserRootR userid (MyRoute dbref) request = ... -- Delete Single User postUserDeleteR :: Int -> Handler MyRoute postUserDeleteR userid (MyRoute dbref) request = ... . -- Define Application using RouteM Monad myApp = do db <- liftIO $ newIORef mydb route (MyRoute db) setDefaultAction $ staticApp $ defaultFileServerSettings "static" . -- Run the application main :: IO () main = toWaiApp myApp >>= run 8080 @ source-repository head type: git location: http://github.com/ajnsit/wai-routes source-repository this type: git location: http://github.com/ajnsit/wai-routes/tree/v0.3.4 tag: v0.3.4 Library hs-source-dirs: src Build-Depends: base >= 3 && < 5 , wai >= 1.3 && < 1.5 , conduit >= 0.5 && < 1.1 , path-pieces , text , bytestring , http-types >= 0.7 , blaze-builder >= 0.2.1.4 && < 0.4 , template-haskell , yesod-routes >= 1.2 , mtl exposed-modules: Network.Wai.Middleware.Routes , Network.Wai.Middleware.Routes.Routes , Network.Wai.Middleware.Routes.Monad , Network.Wai.Middleware.Routes.Handler , Network.Wai.Middleware.Routes.ContentTypes