sap

Sap is a toolkit for Plug applications to accept and respond to HTTP requests by using a decision tree built with combinators.


Keywords
combinators, elixir, plug
License
MIT

Documentation

Sap

Build Status Coverage Status Hex.pm Version Inline docs

Sap is a toolkit for Plug applications to accept and respond to HTTP requests by using a decision tree built with combinators.

Warning! Sap is still in progress. The combinators that are available now will work in an application if you were to create one, but this library could use a lot of optimizations. The eventual goal is to minimize any performance hit to as close to 0% as possible.

Inspiration

This may look familiar to experienced functional programmers. Suave from F# and other similar libraries contain a set of combinators to manipulate route flow and task composition.

Installation

If available in Hex, the package can be installed as:

  1. Add sap to your list of dependencies in mix.exs:

    def deps do [{:sap, "~> 0.0.1"}] end

  2. Ensure sap is started before your application:

    def application do [applications: [:sap]] end

License

Sap is released under the MIT License.

See LICENSE for details.