scotty-0.3.0: scotty.cabal
Name: scotty
Version: 0.3.0
Synopsis: Haskell web framework inspired by Ruby's Sinatra, using WAI and Warp
Homepage: https://github.com/xich/scotty
Bug-reports: https://github.com/xich/scotty/issues
License: BSD3
License-file: LICENSE
Author: Andrew Farmer <anfarmer@ku.edu>
Maintainer: Andrew Farmer <anfarmer@ku.edu>
Copyright: (c) 2012 Andrew Farmer
Category: Web
Stability: experimental
Build-type: Simple
Cabal-version: >= 1.10
Description:
A Haskell web framework inspired by Ruby's Sinatra, using WAI and Warp.
.
@
{-# LANGUAGE OverloadedStrings #-}
.
import Web.Scotty
.
import Data.Monoid (mconcat)
.
main = scotty 3000 $ do
  get "/:word" $ do
    beam <- param "word"
    html $ mconcat ["<h1>Scotty, ", beam, " me up!</h1>"]
@
.
.
Scotty is the cheap and cheerful way to write RESTful, declarative web applications.
.
* A page is as simple as defining the verb, url pattern, and Text content.
.
* It is template-language agnostic. Anything that returns a Text value will do.
.
* Conforms to WAI Application interface.
.
* Uses very fast Warp webserver by default.
.
This design has been done in Haskell at least once before (to my knowledge) by
the miku framework. My issue with miku is that it uses the Hack2 interface
instead of WAI (they are analogous, but the latter seems to have more traction),
and that it is written using a custom prelude called Air (which appears to be an
attempt to turn Haskell into Ruby syntactically). I wanted something that
depends on relatively few other packages, with an API that fits on one page.
.
As for the name: Sinatra + Warp = Scotty.
.
[WAI] <http://hackage.haskell.org/package/wai>
.
[Warp] <http://hackage.haskell.org/package/warp>
Extra-source-files:
README
examples/basic.hs
examples/urlshortener.hs
examples/json.hs
examples/static/jquery.js
examples/static/jquery-json.js
examples/static/json.js
Library
Exposed-modules: Web.Scotty
other-modules: Web.Scotty.Util
default-language: Haskell2010
build-depends: aeson >= 0.5,
base >= 4.3.1 && < 5,
blaze-builder >= 0.3,
bytestring >= 0.9.1,
case-insensitive >= 0.4,
conduit >= 0.1.1.1,
data-default >= 0.3,
http-types >= 0.6.8 && < 0.7,
mtl >= 2.0.1,
text >= 0.11.1,
wai >= 1.0.0,
warp >= 1.0.0
GHC-options: -Wall -fno-warn-orphans
source-repository head
type: git
location: git://github.com/xich/scotty.git