Go to file
Andres Loeh e83397a1db Fix the auth combinator example.
This change adapt the auth combinator example to the new router code.
In general, the server interpretation of user-written combinators will
be affected by the new routing code.

The change here also introduces a change in functionality: previously,
wrong authentication triggered a "hard failure", whereas we now trigger
a "soft failure", which is recoverable. For the simple example, this
does not make a lot of difference.

In general, I think having a soft failure is the right option to take
here, although we want a more general story about the relative
priorities of different error codes.
2015-06-04 13:12:21 +02:00
scripts Add bump-versions script 2015-05-26 12:18:26 +02:00
servant Bump to 0.4.1 2015-05-29 16:24:08 +02:00
servant-blaze Bump to 0.4.1 2015-05-29 16:24:08 +02:00
servant-client Bump to 0.4.1 2015-05-29 16:24:08 +02:00
servant-docs Bump to 0.4.1 2015-05-29 16:24:08 +02:00
servant-examples Fix the auth combinator example. 2015-06-04 13:12:21 +02:00
servant-jquery Bump to 0.4.1 2015-05-29 16:24:08 +02:00
servant-lucid Bump to 0.4.1 2015-05-29 16:24:08 +02:00
servant-server Add test cases for the priority of error codes. 2015-06-04 13:10:21 +02:00
.ghci added servant/.ghci 2014-10-31 15:49:05 +01:00
.gitignore Enter via natural transformations 2015-05-03 00:15:35 +02:00
.travis.yml 7.10 changes 2015-04-22 12:27:18 +02:00
README.md tweak README 2015-05-11 10:36:41 +02:00
servant.png Update READMEs 2015-04-20 15:48:37 +02:00
sources.txt Changelog and sources.txt updates 2015-05-02 12:09:00 +02:00

servant

Build Status Coverage Status

servant

These libraries provides a family of combinators to define webservices and automatically generate the documentation and client-side querying functions for each endpoint.

In order to minimize the dependencies depending on your needs, we provide these features under different packages.

  • servant, which contains everything you need to declare a webservice API.
  • servant-server, which lets you implement an HTTP server with handlers for each endpoint of an API.
  • servant-client, which lets you derive automatically Haskell functions that let you query each endpoint of a servant webservice.
  • servant-docs, which lets you generate API docs for your webservice.
  • servant-jquery, which lets you derive Javascript functions (based on jquery) to query your API's endpoints, in the same spirit as servant-client.
  • servant-blaze and servant-lucid provide easy HTML rendering of your data as an HTML content-type "combinator".

Tutorial

We have a tutorial guide that introduces the core types and features of servant. After this article, you should be able to write your first servant webservices, learning the rest from the haddocks' examples.