alexmingoia / wai-responder

A tiny web application framework for WAI.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Responder

Hackage BSD3 License

Responder is a tiny web application framework for WAI.

  • ResponderM for composing responses and threading state with do notation.
  • Routing with path captures.
  • Parameter parsing from cookies, path, query, and body.
  • Helpers for redirects, headers, status codes, and errors.
{-# language OverloadedStrings #-}
--
import Network.Wai.Handler.Warp (run)
import Network.Wai.Responder
--
main :: IO ()
main = do
  run 8080 $ app defaultResponderOpts () $ do
    get "/" index
    post "/echo/:name" echo
--
index :: ResponderM s a
index = html status200 $ "Hello World!"
--
echo :: ResponderM s a
echo = do
  name <- param "name"
  html status200 $ "Hello, " <> name
--
missing :: ResponderM s a
missing = html status404 $ "Not found..."

Prior work

Responder is the successor to Twain. Responder's API parametizes ResponderM with application state.

About

A tiny web application framework for WAI.

License:BSD 3-Clause "New" or "Revised" License


Languages

Language:Haskell 100.0%