Ketchup

A super small web framework for those who don't like big and fancy codebases

https://github.com/Hamcha/Ketchup

Latest on Hackage:0.4.3

This package is not currently in any snapshots. If you're interested in using it, we recommend adding it to Stackage Nightly. Doing so will make builds more reliable, and allow stackage.org to host generated Haddocks.

MIT licensed by Alessandro Gatti
Maintained by [email protected]

Ketchup is a very small HTTP server implementation, currently 300 LoC (for the whole thing)!

Ketchup is also made to be as modular and embeddable as possible, if you want a cabal-free Haskell app, just take those two/three files you need and put it in your project!

Currently Ketchup comes with:

  • Basic httpd functionality (IPV4 only for now)

  • URL Routing with parameters (ie. /user/:name/)

  • Static file handler (ie. static "." as route/handler)

  • Basic Auth (please use it over a HTTPS reverse proxy)

Dependencies

The core parts of Ketchup are all depedency free, that includes Ketchup.Httpd and Ketchup.Utils (and to a certain extent, Ketchup.Chunked). The dependencies required are for the following modules:

  • Ketchup.Static (uses mime-types)

  • Ketchup.Auth (uses base64-bytestring)