27 releases

Uses old Rust 2015

0.13.5 Oct 16, 2018
0.12.2 Oct 2, 2018
0.11.0 May 14, 2018
0.10.1 Dec 28, 2017
0.5.0 Sep 17, 2017

#41 in #http-service


Used in 6 crates

MIT/Apache

240KB
7K SLoC

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.5"

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 CircleCI Codecov
Travis CI Appveyor CircleCI Codecov

License

This project is licensed under either of

at your option.

Dependencies

~13–21MB
~313K SLoC