9 个版本

0.8.0 2024年1月12日
0.1.9 2024年6月23日
0.1.6 2024年5月28日
0.1.5 2024年3月23日
0.1.1 2024年1月12日

#1 in #viz

Download history 38/week @ 2024-04-17 126/week @ 2024-05-22 46/week @ 2024-05-29 285/week @ 2024-06-05 24/week @ 2024-06-12 145/week @ 2024-06-19 21/week @ 2024-06-26 25/week @ 2024-07-03

687 每月下载量

MIT 许可证

265KB
6.5K SLoC

Viz

Rust 的快速、健壮、灵活、轻量级网页框架

特性

  • 安全性 #![forbid(unsafe_code)]

  • 轻量级

  • 健壮 路由

  • 方便的 提取器

  • 简单 + 灵活 处理程序 & 中间件

  • 支持 Tower 服务

Hello Viz

use std::io;
use std::sync::Arc;

use async_net::TcpListener;
use macro_rules_attribute::apply;
use viz_smol::{IntoResponse, Request, Response, Result, Router};

async fn index(_: Request) -> Result<Response> {
    Ok("<h1>Hello, World!</h1>".into_response())
}

#[apply(smol_macros::main!)]
async fn main(ex: &Arc<smol_macros::Executor<'_>>) -> io::Result<()> {
    // Build our application with a route.
    let app = Router::new().get("/", index);

    // Create a `smol`-based TCP listener.
    let listener = TcpListener::bind(("127.0.0.1", 3000)).await.unwrap();
    println!("listening on {}", listener.local_addr().unwrap());

    // Run it
    viz_smol::serve(ex.clone(), listener, app).await
}

更多示例请见这里

开始使用

打开 Viz.rs,选择语言或版本。

许可证

本项目采用MIT 许可证

作者

依赖

~10–22MB
~315K SLoC