Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Haskell combinators for bidirectional URL routing

branch: master

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

Octocat-spinner-32 Web
Octocat-spinner-32 .gitignore
Octocat-spinner-32 EventExample.hs
Octocat-spinner-32 ExampleRegular.hs
Octocat-spinner-32 ExampleTH.hs
Octocat-spinner-32 LICENSE
Octocat-spinner-32 Makefile
Octocat-spinner-32 README.md
Octocat-spinner-32 Zwaluw.cabal
README.md

Zwaluw is a Haskell combinator library for specifying URL routers. The routers are bidirectional: they parse a URL into a sitemap and serialise sitemap values back to URLs. Because you specify such a router only once, the resulting parser and serialiser are each other's inverse by construction.

Zwaluw derives pure routers for all your constructors. You can either use pure Template Haskell to derive these routers (see ExampleTH.hs), or use the regular package (see ExampleRegular.hs). With those constructor routers, you can build your own router, combining them and producing/consuming URLs. Both files contain an example of this.

Something went wrong with that request. Please try again.