Poem Framework
A program is like a poem, you cannot write a poem without writing it. --- Dijkstra
A full-featured and easy-to-use web framework with the Rust programming language.
Features
- Fast: Both Ease of use and performance.
- Minimal generalization: Minimizing the use of generics.
- Open API: Use poem-openapi to write APIs that comply with OAS3 specifications and automatically generate documents.
Example
use poem::{handler, route, web::Path, route::get, Server};
#[handler]
fn hello(Path(name): Path<String>) -> String {
format!("hello: {}", name)
}
#[tokio::main]
async fn main() {
let app = route().at("/hello/:name", get(hello));
let server = Server::bind("127.0.0.1:3000").await.unwrap();
server.run(app).await.unwrap();
}
More examples can be found here.
Contributing
๐ Thanks for your help improving the project! We are so happy to have you!
License
Licensed under either of
- Apache License, Version 2.0,(LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT) at your option.
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in Poem by you, shall be licensed as Apache, without any additional terms or conditions.