2017-11-25 00:49:25 +01:00
|
|
|
Cookbook
|
|
|
|
========
|
|
|
|
|
|
|
|
This page is a *collective effort* whose goal is to show
|
|
|
|
how to solve many common problems with servant. If you're
|
|
|
|
interested in contributing examples of your own, feel free
|
|
|
|
to open an issue or a pull request on
|
|
|
|
`our github repository <https://github.com/haskell-servant/servant>`_
|
|
|
|
or even to just get in touch with us on the **#servant** IRC channel
|
|
|
|
on freenode or on
|
|
|
|
`the mailing list <https://groups.google.com/forum/#!forum/haskell-servant>`_.
|
|
|
|
|
|
|
|
The scope is very wide. Simple and fancy authentication schemes,
|
|
|
|
file upload, type-safe links, working with CSV, .zip archives,
|
|
|
|
you name it!
|
|
|
|
|
|
|
|
.. toctree::
|
|
|
|
:maxdepth: 1
|
|
|
|
|
2017-12-08 23:21:00 +01:00
|
|
|
structuring-apis/StructuringApis.lhs
|
2018-07-05 14:34:32 +02:00
|
|
|
generic/Generic.lhs
|
2017-12-08 23:21:00 +01:00
|
|
|
https/Https.lhs
|
2019-07-30 09:30:54 +02:00
|
|
|
db-mysql-basics/MysqlBasics.lhs
|
2017-12-02 00:00:27 +01:00
|
|
|
db-sqlite-simple/DBConnection.lhs
|
2017-12-02 00:54:03 +01:00
|
|
|
db-postgres-pool/PostgresPool.lhs
|
2017-12-29 11:01:02 +01:00
|
|
|
using-custom-monad/UsingCustomMonad.lhs
|
2018-07-05 23:21:17 +02:00
|
|
|
using-free-client/UsingFreeClient.lhs
|
2017-12-08 00:33:37 +01:00
|
|
|
basic-auth/BasicAuth.lhs
|
2019-04-19 09:45:14 +02:00
|
|
|
basic-streaming/Streaming.lhs
|
2017-12-08 00:33:37 +01:00
|
|
|
jwt-and-basic-auth/JWTAndBasicAuth.lhs
|
2018-10-04 03:00:06 +02:00
|
|
|
hoist-server-with-context/HoistServerWithContext.lhs
|
2017-12-08 18:59:15 +01:00
|
|
|
file-upload/FileUpload.lhs
|
2018-04-16 15:37:20 +02:00
|
|
|
pagination/Pagination.lhs
|
2018-09-14 19:01:04 +02:00
|
|
|
curl-mock/CurlMock.lhs
|
2018-06-22 17:47:58 +02:00
|
|
|
sentry/Sentry.lhs
|
2018-10-12 05:51:30 +02:00
|
|
|
testing/Testing.lhs
|
2018-11-24 12:09:08 +01:00
|
|
|
open-id-connect/OpenIdConnect.lhs
|