@@ -3,3 +3,28 @@
3
3
5HTTP-client-agnostic client functions for servant APIs.
5HTTP-client-agnostic client functions for servant APIs.
7+This library should mainly be of interest to backend- and combinator-writers.
11+If you are creating a new backend, you'll need to:
13+ 1) Define a `RunClient` instance for your datatype (call it 'MyMonad')
14+ 2) Define a `ClientLike` instance. This will look like:
17+instance ClientLike (MyMonad a) (MyMonad a) where
21+ 3) Re-export the module Servant.Client.Core.Reexport so that your end-users
22+ can be blissfully unaware of 'servant-client-core', and so each
23+ backend-package comes closer to the warm hearth of the drop-in-replacement
26+## For combinator-writers
28+You'l need to define a new `HasClient` instance for your combinator. There are
29+plenty of examples to guide you in the
30+[HasClient](src/Servant/Client/Core/Internal/HasClient.hs) module.