The Spock package

[Tags: bsd3, library]

This toolbox provides everything you need to get a quick start into web hacking with haskell:

A tutorial is available at

[Skip to ReadMe]


Versions0.1.0.0,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, (info)
Change logNone available
Dependenciesaeson (>=0.7), base (==4.*), base64-bytestring (>=1.0), bytestring (>=0.10), case-insensitive (>=1.1), containers (>=0.5), crypto-random (>=0.0.8), directory (>=1.2), focus (>=0.1), hashable (>=1.2), http-types (>=0.8), hvect (>=0.2), list-t (>=0.4), monad-control (>=1.0), mtl (>=2.1), old-locale (>=1.0), path-pieces (>=0.1.4), random (>=1.0), reroute (>=0.3.1), resource-pool (>=0.2), resourcet (>=0.4), stm (>=2.4), stm-containers (>=0.2), text (>=, time (>=1.4), transformers (>=0.3), transformers-base (>=0.4), unordered-containers (>=0.2), vault (>=0.3), wai (>=3.0), wai-extra (>=3.0), warp (>=3.0) [details]
Copyright(c) 2013 - 2015 Alexander Thiemann
AuthorAlexander Thiemann <>
MaintainerAlexander Thiemann <>
Home page
Bug tracker
Source repositoryhead: git clone
UploadedWed Nov 11 06:53:18 UTC 2015 by AlexanderThiemann
DistributionsLTSHaskell:, NixOS:, Stackage:
Downloads10806 total (240 in last 30 days)
2 []
StatusDocs available [build log]
Last success reported on 2015-11-11 [all 1 reports]




Maintainers' corner

For package maintainers and hackage trustees

Readme for Spock-


Build Status Hackage


Hackage: Spock Stackage: Spock

Another Haskell web framework for rapid development

Library Usage Example

{-# LANGUAGE OverloadedStrings #-}
import Web.Spock

import qualified Data.Text as T

main =
    runSpock 3000 $ spockT id $
    do get ("echo" <//> var) $ \something ->
        text $ T.concat ["Echo: ", something]

For more examples check the examples/ directory.



Another Haskell web framework for rapid development: This toolbox provides everything you need to get a quick start into web hacking with haskell:

Important Links




The following Spock extensions exist:

Works well with Spock


Please note that these benchmarks might not be up to date anymore.

Example Projects


Since version Spock supports typesafe routing. If you wish to continue using the untyped version of Spock you can Use Web.Spock.Simple. The implementation of the routing is implemented in a separate haskell package called reroute.

Since version Spock is no longer built on top of scotty. The design and interface is still influenced by scotty, but the internal implementation differs from scotty's.

Thanks to


Pull requests are welcome! Please consider creating an issue beforehand, so we can discuss what you would like to do. Code should be written in a consistent style throughout the project. Avoid whitespace that is sensible to conflicts. (E.g. alignment of = signs in functions definitions) Note that by sending a pull request you agree that your contribution can be released under the BSD3 License as part of the Spock package or related packages.


Supported GHC Versions


Released under the BSD3 license. (c) 2013 - 2015 Alexander Thiemann