- Get the Haskell Platform
- Update your list of packages
cabal update
- Install Yesod and the latest version of Cabal
cabal install Cabal cabal-install yesod
- Create a new project by answering a few questions of the scaffolding tool.
yesod init
- Change into the project directory.
cd my-project
- Automatically install all extra support libraries
cabal install
- Start up your development server.
yesod devel
- View your application at: http://localhost:3000
- Read the book to learn more about Yesod
Haskell install
Yesod requires the presence of the happy and alex binaries. These will be included if you install the Haskell Platform, but not if you install GHC by itself. Also, please ensure that the cabal bin folder is in your PATH variable.
Isolated builds with cabal-dev
Eventually you will probably want to use the cabal-dev tool to achieve an isolated build for your project. If you are having install conflicts you can try starting with that. Install cabal-dev with:
cabal install cabal-dev
Use it just like cabal:
cabal-dev install
Run the development server with the --dev otpion:
yesod --dev devel
Isolated Builds with virthualenv
If you are on Linux/Mac you can create isolated builds with virthualenv.
Database install
Sqlite has no dependencies. If you are going to use a PostgreSQL database you will need an appropriate PostgreSQL install (libpq-dev on debian systems), likewise for MongoDB.
Email install
In development mode e-mails are sent to the log. If you are going to send e-mail in production you will need a sendmail install or an Amazon SES account.
Build documentation
You can configure cabal to automatically generate documentation for all packages you install. To do so, edit your cabal config file (on Unix systems, in $HOME/.cabal/config) and set the "documentation" property to "True".
More help
