6 releases

0.5.2 Dec 25, 2018
0.5.1 Dec 23, 2018
0.4.3 Nov 30, 2018

#8 in #tsukuyomi

Download history 5/week @ 2023-11-20 5/week @ 2023-11-27 1/week @ 2023-12-11 4/week @ 2023-12-18 2/week @ 2023-12-25 3/week @ 2024-02-12 22/week @ 2024-02-19 21/week @ 2024-02-26 23/week @ 2024-03-04

69 downloads per month
Used in 7 crates (via tsukuyomi)

MIT/Apache

44KB
962 lines

header

Asynchronous Web framework for Rust.


Crates.io Minimal Rust Version: 1.31.0 Build Status Coverage Status Gitter

Features

  • Type-safe and composable handlers based on Extractor system
  • Scoped routing and middlewares
  • Asynchronous HTTP server based on tokio, hyper and tower-service

Usage

use {
    std::net::SocketAddr,
    tsukuyomi::{
        App,
        config::prelude::*,
    },
    tsukuyomi_server::Server,
};

fn main() -> tsukuyomi_server::Result<()> {
    let app = App::create(
        path!("/")
            .to(endpoint::reply("Hello, world.\n"))
    )?;

    let addr = SocketAddr::from(([127, 0, 0, 1], 4000));
    println!("Listening on http://{}", addr);

    Server::new(app).bind(addr).run()
}

Resources

Extensions

License

Tsukuyomi is licensed under either of MIT license or Apache License, Version 2.0 at your option.


lib.rs:

The procedural macros for Tsukuyomi.

Dependencies

~2MB
~45K SLoC