Go to file
Maximilian Tagher 7c58b2f0a3
[yesod-test] bump dependency on yesod-form
This brings the new functions introduced in #1628 into scope

This PR is untested, but I'm pretty sure it would work

Closes #1644
2019-11-20 22:56:28 -08:00
.azure Support for Cabal 3.0 2019-11-11 09:47:05 +02:00
.github stack list-dependencies is deprecated 2018-06-06 20:39:56 +05:30
demo Added an example with email auth and an ses mailer 2015-12-05 20:21:38 -07:00
yesod Add Getting Started to READMEs 2019-11-11 13:46:27 +01:00
yesod-auth Translated message "CurrentPassword" for russian language. 2019-10-26 23:08:38 +03:00
yesod-auth-oauth Fix typo in deprecation message 2018-12-27 17:31:58 -08:00
yesod-bin Support for Cabal 3.0 2019-11-11 09:47:05 +02:00
yesod-core Add a warning about DB actions getting rolled back 2019-11-13 20:55:47 -08:00
yesod-eventsource deleted: unneed cabal build-depends by weeder 2018-06-09 13:15:21 +09:00
yesod-form Customize areq and wreq error message 2019-09-10 00:42:21 -05:00
yesod-form-multi Added Multi Input Form Functionality (#1601) 2019-08-16 04:30:20 +01:00
yesod-newsfeed Feedback fixes 2019-10-02 09:07:55 +02:00
yesod-persistent Replace call to connPrepare with getStmtConn (fixes #1635) 2019-10-29 13:25:53 +02:00
yesod-sitemap deleted: unneed cabal build-depends by weeder 2018-06-09 13:15:21 +09:00
yesod-static Strip CRs for Windows testing 2019-04-30 07:03:22 +03:00
yesod-test [yesod-test] bump dependency on yesod-form 2019-11-20 22:56:28 -08:00
yesod-websockets Version bump 2019-05-21 12:10:03 -04:00
.gitignore Ignore stack.yaml.lock 2019-07-06 14:22:32 +12:00
CODE_OF_CONDUCT.md Switch CoC to Contributor Covenant 2017-12-06 16:02:01 +02:00
CONTRIBUTING.md Respond to @psibi's comments 2017-11-08 22:43:51 -08:00
Dockerfile add a Dockerfile for haskell development 2015-05-27 11:43:16 -04:00
LICENSE Switch to copyright year range #617 2017-02-27 09:47:45 +02:00
README.md Add Getting Started to READMEs 2019-11-11 13:46:27 +01:00
stack-lts-9.yaml Added Multi Input Form Functionality (#1601) 2019-08-16 04:30:20 +01:00
stack-nightly.yaml Reenable yesod-auth on nightly 2019-11-16 21:18:18 +05:30
stack-nightly.yaml.lock Reenable yesod-auth on nightly 2019-11-16 21:18:18 +05:30
stack-persistent-2-9.yaml Added Multi Input Form Functionality (#1601) 2019-08-16 04:30:20 +01:00
stack-persistent-2-10.yaml Added Multi Input Form Functionality (#1601) 2019-08-16 04:30:20 +01:00
stack.yaml Added Multi Input Form Functionality (#1601) 2019-08-16 04:30:20 +01:00
stack.yaml.lock Added Multi Input Form Functionality (#1601) 2019-08-16 04:30:20 +01:00

Build Status

Yesod Web Framework

An advanced web framework using the Haskell programming language. Featuring:

  • safety & security guaranteed at compile time
  • developer productivity: tools for all your basic web development needs
  • raw performance
    • fast, compiled code
    • techniques for constant-space memory consumption
  • asynchronous IO
    • this is built in to the Haskell programming language (like Erlang)

Getting Started

Learn more about Yesod on its main website. If you want to get started using Yesod, we strongly recommend the quick start guide, based on the Haskell build tool stack.

Here's a minimal example!

{-# LANGUAGE OverloadedStrings, QuasiQuotes, TemplateHaskell, TypeFamilies #-}

import Yesod

data App = App -- Put your config, database connection pool, etc. in here.

-- Derive routes and instances for App.
mkYesod "App" [parseRoutes|
/ HomeR GET
|]

instance Yesod App -- Methods in here can be overridden as needed.

-- The handler for the GET request at /, corresponds to HomeR.
getHomeR :: Handler Html
getHomeR = defaultLayout [whamlet|Hello World!|]

main :: IO ()
main = warp 3000 App

To read about each of the concepts in use above (routing, handlers, linking, JSON), in detail, visit Basics in the Yesod book.

Hacking on Yesod

Yesod consists mostly of four repositories:

git clone --recurse-submodules http://github.com/yesodweb/shakespeare
git clone --recurse-submodules http://github.com/yesodweb/persistent
git clone --recurse-submodules http://github.com/yesodweb/wai
git clone --recurse-submodules http://github.com/yesodweb/yesod

Each repository can be built with stack build.