• github上排名前十的Rust开源项目汇总
  • 发布于 2个月前
  • 168 热度
    0 评论
背景

近期准备把个人项目迁移到rust实现,对于我自己而言最核心的驱动力是需要让rust小马拉大车,个人服务器的硬件配置都不太高,如果使用Java那点内存基本不够JVM造的。在此期间也曾考虑过使用go,客观说go的性能和内存占比的确能满足需求,go的垃圾回收优化的也的确很好,go和rust最明显的对比还是在开发速度上,性能差距其实不是很大。


我最认可的一句话是如果你开发一个功能明天就要用,那用go,如果开发出来想稳定运行5年以上就用rust。与我而言其实更多的是追求极客精神-极致的性能和对硬件极致的使用。个人项目复杂度不高,在技术栈使用上也不会多,一切以低成本为原则,愿意用时间换取对硬件最小化的依赖,毕竟个人项目是用爱发电,更新频率也不是太高。


rust目前并没有像python go java这些语言那么火,很优秀但是并非非他不可,web后端从web互联网时代以来长期被Java统治着,云原生和devops是go的主战场, 机器学习是python的天下,可见这些语言大火时都有某种特定的时代背景。


如果找一个语言可以替代C++,那么非rust莫属,但是如果打着能替代C++的旗号鼓吹rust,我觉得在当前大环境下是没有什么竞争力的,毕竟C++的用户群体是相当庞大的,上有c++,下有go,java,python我甚至觉得rust是有点奇虎难下的,我很优秀但是怎奈竞争对手都很强大,用go的会为了那么一丁点性能提升把项目迁移到rust实现吗?我想显然是不会的,rust还需要再突破突破创造些自己独有的优势。


目前在github上排名前十的开源项目整理出来与大家共享。(以截止目前的star数排名,不包含rust本身和rustlings这种没有应用含量的star出来的项目)

Deno
Deno 是 V8 上的安全 TypeScript 运行时。Deno 是一个建立在V8、Rust和Tokio之上的 JavaScript、TypeScript 和 WebAssembly 的运行时环境,具有自带安全的设置和出色的开发人员体验。

Tauri
Tauri 是一个框架,用于为所有主要桌面平台构建小巧、快速的二进制文件。开发人员可以集成任何可编译为 HTML、JS 和 CSS 的前端框架,以构建他们的用户界面。应用程序的后端是一个基于 Rust 的二进制文件,带有一个前端可以与之交互的 API。

RustDesk
国产开源远程桌面软件,开箱即用,无需任何配置。完全自己掌控数据,不用担心安全问题。

Alacritty
Alacritty 是一款现代化的终端模拟器,它带有合理的默认设置,但允许进行广泛的配置。通过与其他应用程序集成,而不是重新实现其功能,它能够以高性能提供一组灵活的特性。目前支持的平台包括 BSD、Linux、macOS 和 Windows。

BAT
类似 cat,带有 git 集成和语法高亮的命令行工具

ripgrep
ripgrep 是一个面向行的搜索工具,可以递归地搜索当前目录中的正则表达式模式。与其他流行的搜索工具(如 The Silver Searcher、ack 和 grep)类似,ripgrep 也具有许多有用的特性。例如,它支持正则表达式、多线程搜索、颜色高亮显示等功能。此外,ripgrep 还提供了丰富的命令行选项,可以根据需要进行定制。核心是速度快。

Meilisearch
Meilisearch是一个功能强大、快速、开源、易于使用和部署的搜索引擎。它具有高度可定制的搜索和索引功能,并提供开箱即用的特性,如输入、过滤器和同义词等。Meilisearch支持中文搜索,不需要添加额外的配置。

starship
Starship是一个功能强大、高度可定制和跨平台的终端提示符工具,适用于各种终端环境和个人需求。它可以帮助用户创建独特且有用的终端提示符,提升终端的使用体验。

FD
fd 是一个在你文件系统中查找条目的程序。它是一个简单、快速、友好的 [find](https://www.gnu.org/software/findutils/) 替代品。虽然它的目标不是支持 find` 的所有强大功能,但它为大多数的使用情况提供了合理的(有意见的)默认值。

Vaultwarden
Vaultwarden是一个开源的密码管理器,它使用AES-256-GCM进行加密,并提供基于角色的访问控制。Vaultwarden的主要目标是提供一个易于使用的密码管理器,同时保证数据的安全性。它支持Windows、macOS和Linux操作系统,并且可以通过命令行或GUI界面进行操作。

总结
以上就是目前rust的前十开源项目,基本都是应用类的,在这方面也的确抢了一部分c++的饭碗,在web方面actix-web axum 对rust web开发的支持也比较友好,缺点是开发效率和生态不足,使得目前仅活跃在小型应用范畴,距离企业级大型应用目前还上不了台面。
用户评论