Name: wai-routes Version: 0.2 Synopsis: Typesafe URLs for Wai applications. Homepage: https://github.com/ajnsit/wai-routes License: GPL 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, 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.2 tag: v0.2 Library hs-source-dirs: src Build-Depends: base >= 3 && < 5 , wai >= 1.3 , path-pieces , text , http-types >= 0.7 , template-haskell , yesod-routes >= 1.1 , mtl exposed-modules: Network.Wai.Middleware.Routes , Network.Wai.Middleware.Routes.Routes , Network.Wai.Middleware.Routes.Monad