当前位置:首页 > 技术分析 > 正文内容

谁说Rust语言没啥用,越来越多的工具使用Rust重新造轮子

ruisui884周前 (03-30)技术分析16

Rust是这几年比较流行的新语言,虽然说是新语言,但是也是十几岁的老同志了,也就是相对于C/C++语言来说算新语言,因为Rust在某些方面是用来接替C/C++的工作。

不过很多人觉得没有必要搞个新语言,C/C++性能就是王者了,用C++就能搞定了何必学个新玩意?但是现实情况是,越来越多的工具使用Rust来开发和重构,下面就推荐一些使用Rust开发的项目。

Deno

Deno是一个
JavaScript/Node.js/Typescript运行时,可用来取代Node.js,只因Node.js迟迟不支持Typescript直接运行,尽管Node.js新版本会支持直接运行,但Deno已经有大量用户了,目前github已有101K的Star,Node的Star也才109K,你包括我可以不相信Deno可以取代Node.js,但是有这样的竞争项目出现,Node.js会加快进步的,且现在还有一个使用Zig开发的bun更厉害,目前Bun的Star为75.7K。

Turbopack

使用Rust开发的React和Typescript构建工具,主要对标Webpack、Vite等,由Vercel公司开发。


Turborepo

使用Rust开发的Typescript和JavaScript构建工具,专为Monorepo项目架构打造,由Vercel公司开发。

Fnm

使用Rust开发的Node.js版本和环境管理器,由Vercel公司开发,对标NVM等。

Volta

使用Rust开发的Nodejs环境和包管理器,对标Fnm、Nvm等。


SWC(Speedy Web Compiler)

Rust开发的前端打包编译构建工具,号称比Babel快20-70倍。

Parcel

使用Rust重构的前端构建工具,几乎能打包所有主流的前端项目和技术,主要对标Webpack。

支持SVG、GraphQL、XML、Vue、React、MDX、Typescript、JavaScript、Less、SASS、Stylus、图片等前端各种资源打包。

支持Vue、React等框架


Rudis

和Redis相同的键值对数据库,使用Rust语言开发。

Tauri

使用webview网页开发技术创建跨平台桌面应用,对标Electron,且没有Electron那样大体积的打包包袱,且新版本支持移动端。框架由Rust开发,且编写应用时可以使用Rust作为操作系统交互语言,使用web网页进行UI层开发。

Ruff

Rust开发的Python语言格式化工具


uv

https://docs.astral.sh/uv/

Python全能环境和包管理器,使用Rust开发,对标pip, pip-tools, pipx, poetry, pyenv, twine, virtualenv,比pip快10-100倍,即一个工具包含多个Python必要的打包与构建工具、支持Python虚拟环境,多版本环境等。

Rspack

使用Rust开发的前端web打包工具,由字节跳动开发,对标Webpack,且是兼容Webpack的api,不得不说前端就是卷,为了打包速度,重复造轮子就是多,Vite本身就是一个重复的轮子,结果还有新的轮子在对标Vite,不就是为了提高打包速度。

Rsbuild

Rust开发的在Rspack之上封装的构建工具

CeresDB / HoraeDB

使用Rust开发的时序数据库,由蚂蚁集团OceanBase开发。

Pingora

Cloudflare公司使用Rust开发的服务器软件,用来替代NGINX。

lapce

Rust开发的代码编辑器,对标Sublime Text和Vscode、Atom等。

Xi editor

Rust开发的文本编辑器,对标NeoVim等


InfluxDB

Rust开发的流式实时数据库。

Nushell

Rust开发的Shell,支持跨平台,支持复杂的条件表达式,比目前很多系统自带的Shell强大很多,对标Bash/ZSH等。

Fish-Shell

有一个Shell,用户友好的Shell,有很强的智能提示能力,即命令补全能力较强。

Spotify TUI

Rust开发的命令行终端,比起系统自带终端,有更强的表现能力。

Dioxus

一个跨平台的应用开发框架,对标Tauri和Electron。


支持PC桌面版和移动端

Servo

Rust语言开发的web浏览器引擎,对标Webkit。

Sonic

对标Elasticsearch的搜索引擎

RustPython

使用Rust语言开发的Python语言解释器,RustPython支持Rust项目中使用Python语言,且支持web浏览器打包嵌入Python(使用Webassemby技术)。

wasmtime

使用Rust语言开发的WebAssembly运行时


TiKV

使用Rust语言开发的键值对数据库,对标TiDB

LibSQL

使用Rust开发的数据库,Fork自SQLite

OXC

JavaScript工具集,支持解析、格式化、转译等。

Rolldown

又一个Rust开发的前端打包工具,对标Rollup,支持为Vite设计。

gitoxide

使用Rust开发的git库,git实现。命令名称为gix,可替代git命令。

Bottlerocket OS

使用rust开发的开源容器化操作系统

shadowsocks-rust

使用Rust实现的shadowsocks工具

neon

node.js的Rust绑定

Lightning CSS

一个Rust开发的css预处理器,对标less、sass等


DataFusion

使用Rust开发的大数据引擎,对标Presto/Trino Apache Hive Apache Impala

youki

Rust开发的开源容器运行时,对标runc


Stalwart Mail Server

Rust开发的全能的邮件服务器IMAP, JMAP, POP3, SMTP

扫描二维码推送至手机访问。

版权声明:本文由ruisui88发布,如需转载请注明出处。

本文链接:http://www.ruisui88.com/post/3158.html

标签: vite svg
分享给朋友:

“谁说Rust语言没啥用,越来越多的工具使用Rust重新造轮子” 的相关文章

vue组件间的九种通信方式

前言Vue组件实例间的作用域是相互独立的,而通常一个页面是由很多个组件构成,这些组件可能又嵌套了组件,形成了一个关系网图,它们的关系可能是像下图中一样,大致分为两种使用场景,父子组件间通信和非父子组件间通信,父子组件间通信又分为直接父子关系和间接父子关系。vue提供了多种通信方法,针对不同的通信需求...

快速上手React

web前端三大主流框架1、Angular大家眼里比较牛的框架,甚至有人说三大框架中只有它能称得上一个完整的框架,因为它包含的东西比较完善,包含模板,数据双向绑定,路由,模块化,服务,过滤器,依赖注入等所有功能。对于刚开始学习使用框架的小伙伴们,可以推荐这个框架,学会之后简直能颠覆之前你对前端开发的认...

10个实例小练习,快速入门熟练 Vue3 核心新特性(一)

作者:xuying 全栈修炼转发链接:https://mp.weixin.qq.com/s/_n2seDbbiO5hXQfuUGbUCQ前言Vue3.0 发 beta 版都有一段时间了,正式版也不远了,所以真的要学习一下 Vue3.0 的语法了。本篇文章总共分两部分,望小伙伴们认真阅读。下一篇:10...

代码管理-9-gitlab的使用和设置

gitlab使用1、外观设置完成后保存,返回登录页面查看关于注册,有些公司是不允许打开的,,有些人数非常多的公司就需要打开注册的功能,让人员自己注册,我们来给他特定的权限就可以,毕竟人非常多的时候还由我们来给她们注册就非常不现实了,工作量会很大2、自动注册3、组&用户&项目创建组设置组名称、描述等创...

用IDEA开发如何用Git快速拉取指定分支代码?

1,准备空的文件夹,git init2,关联远程仓库,git remote add origin gitlab地址3,拉取远程分支代码,git pull origin 远程分支名再用IDEA打开项目即可...

理解virt、res、shr之间的关系(linux系统篇)

前言想必在linux上写过程序的同学都有分析进程占用多少内存的经历,或者被问到这样的问题——你的程序在运行时占用了多少内存(物理内存)?通常我们可以通过top命令查看进程占用了多少内存。这里我们可以看到VIRT、RES和SHR三个重要的指标,他们分别代表什么意思呢?这是本文需要跟大家一起探讨的问题。...