#service #finchers #http-service #run-time #asynchronous #combinator #future

finchers-runtime

Runtime support for Finchers, which supports serving asynchronous HTTP services

1 unstable release

Uses old Rust 2015

0.11.0 May 14, 2018

#7 in #finchers

MIT/Apache

66KB
2K 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.14.0-dev"

Example

use finchers::{
    prelude::*,
    endpoint::syntax::path,
};

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

    izanami::Server::build()
        .start(endpoint.into_service())
}

Resources

Contributed Features

Status

Travis CI Codecov
Travis CI Codecov

License

This project is licensed under either of

at your option.

Dependencies

~12–21MB
~273K SLoC