Neo4j with Elixir, Phoenix and Neo4j.Sips(β) - The Movies Example Application Tabula - pretty printer for maps/structs collections

Sap - HTTP combinators for Plug applications

In most Plug applications, there is some sort of match and/or dispatch process that takes place for an individual request. A request will come in, a set of pattern matching statements created will be compared against the requested path, and if there’s a match, a function will be called to send the client a response. Here, there is a clear separation between matching/filtering a request and creating a response.

With Sap, the basic idea remains the same, but the way a request is accepted and a response is created is slightly different. Combinators, a fancy name for simple functions meant to be composed with one another, are tasked with one of two goals:

  • filter requests based on some criteria
  • build up a response

The power of these functions comes from the ability to compose them in any order. There is no clear separation of each type of combinators, so a filtering combinator can be used both before and after a building combinator and vice versa.

Find more information: