A cookiecutter template for (almost) production-ready Servant servers.
My goal is to reduce friction for people starting working on Haskell REST API servers by putting together a few best practices in a way that's not intrusive or prescriptive.
$ pip install --user cookiecutter
$ cookiecutter gh:jml/servant-template
Once the template is created, you can build things with stack or use the
provided Makefile.
Your API definition goes in the YourApp.API module and the application logic in the YourApp.Server.Handlers module.
Things you get with this template:
This cookiecutter project makes a few opinionated decisions:
package.yaml (from hpack) to configure dependencies etc.Many of these opinions are lightly held. If this template would be more useful to you with some of them changed, please file an issue or submit a PR.
Note that the Cabal file is not checked in to this cookiecutter template.
Uses Johan Tibbe's style guide, enforced by hindent
You can build a Docker image with make image.
74 commits
1 commits
Haskell
78.8%
Shell
15.1%
Makefile
6.1%
A cookiecutter template for (almost) production-ready Servant servers.
My goal is to reduce friction for people starting working on Haskell REST API servers by putting together a few best practices in a way that's not intrusive or prescriptive.
$ pip install --user cookiecutter
$ cookiecutter gh:jml/servant-template
Once the template is created, you can build things with stack or use the
provided Makefile.
Your API definition goes in the YourApp.API module and the application logic in the YourApp.Server.Handlers module.
Things you get with this template:
This cookiecutter project makes a few opinionated decisions:
package.yaml (from hpack) to configure dependencies etc.Many of these opinions are lightly held. If this template would be more useful to you with some of them changed, please file an issue or submit a PR.
Note that the Cabal file is not checked in to this cookiecutter template.
Uses Johan Tibbe's style guide, enforced by hindent
You can build a Docker image with make image.
74 commits
1 commits
Haskell
78.8%
Shell
15.1%
Makefile
6.1%