The yesod package
Yesod is a framework designed to foster creation of RESTful web application that have strong compile-time guarantees of correctness. It also affords space efficient code and portability to many deployment backends, from CGI to stand-alone serving.
The Yesod documentation site <http://docs.yesodweb.com/> has much more information, tutorials and information on some of the supporting packages, like Hamlet and web-routes-quasi.
As a quick overview, here is a fully-functional Hello World application:
> -# LANGUAGE TypeFamilies, QuasiQuotes, TemplateHaskell #- > import Yesod > data HelloWorld = HelloWorld > mkYesod "HelloWorld" [$parseRoutes|/ Home GET|] > instance Yesod HelloWorld where approot _ = "" > getHome = return $ RepPlain $ cs "Hello World!" > main = toWaiApp HelloWorld >>= basicHandler 3000
Properties
| Versions | 0.0.0, 0.0.0.1, 0.0.0.2, 0.2.0, 0.3.0, 0.3.1, 0.3.1.1, 0.4.0, 0.4.0.1, 0.4.0.2, 0.4.0.3, 0.4.1, 0.5.0, 0.5.0.1, 0.5.0.2, 0.5.0.3, 0.5.1, 0.5.2, 0.5.3, 0.5.4, 0.5.4.1, 0.5.4.2, 0.6.0, 0.6.0.1, 0.6.0.2, 0.6.1, 0.6.1.1, 0.6.1.2, 0.6.2, 0.6.3, 0.6.4, 0.6.5, 0.6.6, 0.6.7, 0.7.0, 0.7.1, 0.7.2, 0.7.3, 0.8.0, 0.8.1, 0.8.2, 0.8.2.1, 0.9.1, 0.9.1.1, 0.9.2, 0.9.2.1, 0.9.2.2, 0.9.3, 0.9.3.1, 0.9.3.2, 0.9.3.3, 0.9.3.4, 0.9.4, 0.9.4.1, 0.10.1, 0.10.1.1, 0.10.1.2, 0.10.1.3, 0.10.1.4, 0.10.2, 1.0.0, 1.0.0.1, 1.0.0.2, 1.0.1, 1.0.1.1, 1.0.1.2, 1.0.1.3, 1.0.1.4, 1.0.1.5, 1.0.1.6, 1.1.0, 1.1.0.1, 1.1.0.2, 1.1.0.3, 1.1.1, 1.1.1.2, 1.1.2, 1.1.3, 1.1.3.1, 1.1.4, 1.1.4.1, 1.1.5, 1.1.6, 1.1.7, 1.1.7.1, 1.1.7.2, 1.1.8, 1.1.8.1, 1.1.8.2, 1.1.9, 1.1.9.1, 1.1.9.2, 1.1.9.3, 1.2.0, 1.2.0.1, 1.2.1 |
|---|---|
| Dependencies | authenticate (≥0.6.2 & <0.7), base (4.*), bytestring (≥0.9.1.4 & <0.10), cereal (0.2.*), clientsession (≥0.4.0 & <0.5), control-monad-attempt (0.3.*), convertible-text (≥0.3.0 & <0.4), directory (≥1 & <1.1), hamlet (≥0.2.2 & <0.3), MonadCatchIO-transformers (≥0.1 & <0.3), old-locale (≥1.0.0.2 & <1.1), pureMD5 (≥1.1.0.0 & <1.2), random (≥1.0.0.2 & <1.1), template-haskell (2.4.*), text (≥0.5 & <0.8), time (≥1.1.3 & <1.2), transformers (≥0.1 & <0.3), wai (≥0.1.0 & <0.2), wai-extra (≥0.1.2 & <0.2), web-routes (0.22.*), web-routes-quasi (0.3.*) |
| License | BSD3 |
| Author | Michael Snoyman <michael@snoyman.com> |
| Maintainer | Michael Snoyman <michael@snoyman.com> |
| Stability | Stable |
| Category | Web |
| Home page | http://docs.yesodweb.com/yesod/ |
| Source repository | git clone git://github.com/snoyberg/yesod.git |
| Executables | runtests |
| Upload date | Mon May 24 12:13:25 UTC 2010 |
| Uploaded by | MichaelSnoyman |
| Build failure | ghc-6.12 (log) |
| Distributions | NixOS: 1.2.1, Debian: 1.1.9.3, FreeBSD: 1.2.0.1 |
Modules
- Yesod
- Yesod.Content
- Yesod.Dispatch
- Yesod.Form
- Yesod.Hamlet
- Yesod.Handler
- Helpers
- Yesod.Helpers.AtomFeed
- Yesod.Helpers.Auth
- Yesod.Helpers.Sitemap
- Yesod.Helpers.Static
- Yesod.Internal
- Yesod.Json
- Yesod.Request
- Yesod.Yesod
Downloads
- yesod-0.2.0.tar.gz (Cabal source package)
- package description (included in the package)