扫一扫
关注 HG 公众号
发现更多开源乐趣

Rust 项目

兴趣是最好的老师,HelloGitHub 就是帮你找到编程的兴趣。

tui-rs

第 71 期 Star 8.6k Watch 66 Fork 425
用来构建丰富的终端用户界面的库
tui-rs

hyperfine

第 68 期 Star 12.9k Watch 74 Fork 241
命令行基准测试工具。可用来查看和对比命令的耗时,支持多次运行的统计分析、结果导出等功能
hyperfine

polars

第 67 期 Star 8.1k Watch 86 Fork 451
多线程、类 Pandas 的数据处理库。底层采用 Apache Arrow 从而带来了更高效的数据处理性能、占用内存更少、处理速度更快,再加上简单易用的 API,让你在处理大数据集(50GB)时,更加游刃有余。支持 Rust、Python 等语言,值得一试

import polars as pl

q = (
    pl.scan_csv("iris.csv")
    .filter(pl.col("sepal_length") > 5)
    .groupby("species")
    .agg(pl.all().sum())
)

df = q.collect()

polars

nushell

第 66 期 Star 20.9k Watch 158 Fork 1.0k
一种更加人性化的新型 shell
nushell

toydb

第 65 期 Star 3.7k Watch 70 Fork 316
Rust 写的分布式 SQL 数据库实战项目。作为一个学习项目并不适合于生产环境,但通过该项目你可以学习如何用 Rust 实现 Raft 协议、符合 ACID 的事物引擎、SQL 解析、数据持久化等。适合对数据库底层运作原理感兴趣的小伙伴
toydb

azul

第 63 期 Star 5.3k Watch 110 Fork 208
一个跨平台的 Rust 和 C/C++ 的 GUI 框架。使用 WebRender 渲染引擎和 CSS/HTML-like DOM 构建,可用于开发漂亮的原生桌面应用程序

#![cfg_attr(not(debug_assertions), windows_subsystem = "windows")]

use azul::prelude::*;
use azul_widgets::table_view::*;

struct TableDemo {
    // cells: BTreeMap<TableCell, String>,
}

extern "C" fn layout(data: &mut RefAny, _: LayoutCallbackInfo) -> StyledDom {

    let mut table_view_state = TableViewState::default();
    table_view_state.set_cell_content(TableCellIndex { row: 2, column: 2 }, "Hello World");
    table_view_state.set_selection(Some(TableCellSelection::from(3, 4).to(3, 4)));

    TableView::new(table_view_state).dom().style(Css::empty())
}

fn main() {
    let app = App::new(RefAny::new(TableDemo { }), AppConfig::new(LayoutSolver::Default));
    app.run(WindowCreateOptions::new(layout));
}

azul

indicatif

第 63 期 Star 3.0k Watch 14 Fork 183
样式丰富的 Rust 终端进度条库

use indicatif::ProgressBar;

let bar = ProgressBar::new(1000);
for _ in 0..1000 {
    bar.inc(1);
    // ...
}
bar.finish();

indicatif

rustdesk

第 63 期 Star 29.5k Watch 292 Fork 2.6k 中文
免费开源的远程桌面软件。开箱即用无需任何配置,支持 Linux/Mac/Win/Android 等平台。还能够自行搭建服务器,由用户自己掌控数据,不必担心隐私数据泄露的问题。在当下越来越多的远程桌面软件都收费的情况下的另一个选择
rustdesk

fselect

第 61 期 Star 3.3k Watch 35 Fork 74
用类 SQL 的命令查找文件的命令行工具

fselect size, path from /home/user where name = '*.cfg' or name = '*.tmp'
fselect size, abspath from ./tmp where size gt 2g
fselect hsize, abspath from ./tmp where size lt 8k

jpeg_tutorial

第 57 期 Star 646 Watch 23 Fork 42 中文
教你编写 JPEG 解码器的教程,示例为 Rust 代码