A modular web framework built around async/await
Add two dependencies to your project's Cargo.toml
file: tide
itself, and async-std
with the feature attributes
enabled:
```toml
tide = "0.12.0" async-std = { version = "1.6.0", features = ["attributes"] } ```
Hello World
```rust
async fn main() -> Result<(), std::io::Error> { tide::log::start(); let mut app = tide::new(); app.at("/").get(|_| async { Ok("Hello, world!") }); app.listen("127.0.0.1:8080").await?; Ok(()) } ```
To try the included examples, check out this repository and run
sh
$ cargo run --example # shows a list of available examples
$ cargo run --example hello
Tide's default backend currently does not support TLS, and only supports HTTP/1.1.
In order to use nginx as reverse proxy for Tide, your upstream proxy configuration must include this line:
proxy_http_version 1.1;
Read about the design here:
Want to join us? Check out our The "Contributing" section of the guide and take a look at some of these issues:
The Tide project adheres to the Contributor Covenant Code of Conduct. This describes the minimum behavior expected from all contributors.
Licensed under either of
at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.