A combinator library for builidng asynchronous HTTP services


Keywords
finchers, framework, web, server, combinators, finch, hyper
License
Apache-2.0

Documentation

finchers

Crates.io Crates.io (Downloads) Docs.rs Master doc Rustc Version dependency status Gitter

finchers is a combinator library for building asynchronous HTTP services.

The concept and design was highly inspired by finch.

Features

  • Asynchronous handling powerd by futures and Tokio
  • Building an HTTP service by combining the primitive components
  • Type-safe routing without (unstable) procedural macros

Usage

Add this item to Cargo.toml in your project:

[dependencies]
finchers = "0.13.4"

Example

#[macro_use]
extern crate finchers;
use finchers::prelude::*;

fn main() {
    let endpoint = path!(@get / "greeting" / String)
        .map(|name: String| {
            format!("Hello, {}!\n", name)
        });

    finchers::server::start(endpoint)
        .serve("127.0.0.1:4000")
        .expect("failed to start the server");
}

Resources

Contributed Features

Status

Travis CI Appveyor Coveralls
Travis CI Appveyor Coveralls

License

This project is licensed under either of

at your option.