GithubHelp home page GithubHelp logo

markdeng206 / awesome-rust-list Goto Github PK

View Code? Open in Web Editor NEW

This project forked from codingonion/awesome-rust-list

0.0 0.0 0.0 51 KB

A collection of some awesome public Rust programming language projects.

awesome-rust-list's Introduction

Awesome-Rust-List

Awesome

🔥🔥🔥 This repository lists some awesome public Rust programming language projects.

Contents

Summary

Data Structure and Algorithm

Design Pattern

Memory Allocator

Asynchronous Runtime

  • Tokio : A runtime for writing reliable, asynchronous, and slim applications with the Rust programming language.

Embedded Development

Universal Operating System

  • BlogOS : This repository contains the source code for the Writing an OS in Rust series at os.phil-opp.com.

  • rCore-Tutorial-v3 : OS kernel labs based on Rust/C Lang & RISC-V 64/X86-32.

  • rCore : Rust version of THU uCore OS. Linux compatible.

  • zCore : Reimplement Zircon microkernel in Rust.

  • RustSBI : RISC-V Supervisor Binary Interface (RISC-V SBI) implementation library in Rust; runs on M or HS mode; good support for embedded Rust ecosystem.

  • writing-an-os-in-rust : 《使用Rust编写操作系统》

  • Theseus : Theseus is a modern OS written from scratch in Rust that explores 𝐢𝐧𝐭𝐫𝐚𝐥𝐢𝐧𝐠𝐮𝐚𝐥 𝐝𝐞𝐬𝐢𝐠𝐧, novel OS structure, and state management.

  • snarkOS : A Decentralized Operating System for Zero-Knowledge Applications.

  • thepowersgang/rust_os : An OS kernel written in rust. Non POSIX.

  • MOROS : MOROS: Obscure Rust Operating System 🦉

  • EuraliOS : A hobby x86-64 operating system written in Rust.

  • SIMDeez : A library that abstracts over SIMD instruction sets, including ones with differing widths. SIMDeez is designed to allow you to write a function one time and produce SSE2, SSE41, and AVX2 versions of the function.

  • yavkOS : Operating system based off of blog_os, with the goal of running wasm modules as executables.

Robot Operating System

Hardware Description Language

  • Veryl : Veryl: A Modern Hardware Description Language.

  • RustHDL : A framework for writing FPGA firmware using the Rust Programming Language.

  • VHDL-LS/rust_hdl : This repository contains a fast VHDL language server and analysis library written in Rust.

  • yupferris/kaze : An HDL embedded in Rust. kaze provides an API to describe Modules composed of Signals, which can then be used to generate Rust simulator code or Verilog modules.

FFI Bindings

GPU Computation

  • rust-gpu : 🐉 Making Rust a first-class language and ecosystem for GPU shaders 🚧 shader.rs

  • cudarc : cudarc: minimal and safe api over the cuda toolkit.

  • Rust-CUDA : Ecosystem of libraries and tools for writing and executing fast GPU code fully in Rust.

  • Vulkano : Safe and rich Rust wrapper around the Vulkan API.

  • wgpu : Safe and portable GPU abstraction in Rust, implementing WebGPU API. wgpu.rs

  • Ash : Vulkan bindings for Rust.

  • arrayfire-rust : Rust wrapper for ArrayFire. ArrayFire is a general-purpose tensor library that simplifies the process of software development for the parallel architectures found in CPUs, GPUs, and other hardware acceleration devices.

  • ocl : OpenCL for Rust.

  • opencl3 : A Rust implementation of the Khronos OpenCL 3.0 API.

Graphics Library

Shared Memory

Remote Desktop

  • RustDesk : Virtual / remote desktop infrastructure for everyone! Open source TeamViewer / Citrix alternative. rustdesk.com.

Date and Time

Data Encryption

  • rustic : rustic - fast, encrypted, deduplicated backups powered by Rust.

Scientific Computation

  • Numerical Calculation

  • Linear Algebra

    • mathbench : mathbench is a suite of unit tests and benchmarks comparing the output and performance of a number of different Rust linear algebra libraries for common game and graphics development tasks.

    • ndarray : The ndarray crate provides an n-dimensional container for general elements and for numerics.

    • ndarray-linalg : Linear algebra package for rust-ndarray using LAPACK binding.

    • nalgebra : Linear algebra library for the Rust programming language.

    • glam : A simple and fast 3D math library for games and graphics.

    • faer : faer is a collection of crates that implement low level linear algebra routines in pure Rust. The aim is to eventually provide a fully featured library for linear algebra with focus on portability, correctness, and performance. faer-rs.github.io

    • rust-numpy : PyO3-based Rust bindings of the NumPy C-API.

    • cgmath : A linear algebra and mathematics library for computer graphics.

    • ultraviolet : A wide linear algebra crate for games and graphics.

    • vek : Generic 2D-3D math swiss army knife for game engines, with SIMD support and focus on convenience.

    • static-math : Safe and fast mathematical operations with static arrays in the Rust programming language.

    • custos-math : This crate provides CUDA, OpenCL, CPU (and Stack) based matrix operations using custos.

  • Lie Groups

    • sophus-rs : Rust bindings for the C++ implementation of Lie Groups using Eigen.
  • Optimization Algorithm

    • OpEn : Optimization Engine (OpEn) is a solver for Fast & Accurate Embedded Optimization for next-generation Robotics and Autonomous Systems.

    • mithi/rusty-genes : Genetic algorithm implementation in Rust with animated visualizations in Python.

  • Finite Element Computation

  • Data Analysis and Visualization

    • Polars : Polars. Fast multi-threaded, hybrid-out-of-core DataFrame library in Rust | Python | Node.js.

    • Lance : Lance: modern columnar data format for ML. Convert from parquet in 2-lines of code for 100x faster random access, a vector index, data versioning, and more. Compatible with pandas, duckdb, polars, pyarrow, with more integrations on the way. eto-ai.github.io/lance/

    • Plotters : A rust drawing library for high quality data plotting for both WASM and native, statically and realtimely 🦀 📈🚀

    • Typst : A new markup-based typesetting system that is powerful and easy to learn. Typst is a new markup-based typesetting system that is designed to be as powerful as LaTeX while being much easier to learn and use. typst.app.

    • Rerun : Rerun: Visualization infrastructure for computer vision. Log images, point clouds, etc, and visualize them effortlessly. Built in Rust using egui. rerun.io

Sensor and Communication Interface

Signal Processing

Text Processing

Image and Video Processing

  • opencv-rust : Rust bindings for OpenCV 3 & 4.

  • photon : Photon is a high-performance Rust image processing library, which compiles to WebAssembly, allowing for safe, blazing-fast image processing both natively and on the web. silvia-odwyer.github.io/photon

  • image-rs/image : Encoding and decoding images in Rust.

  • image-rs/imageproc : An image processing library, based on the image library.

  • zshipko/image2-rs : A Rust crate focused on generic image processing for a wide range of image formats and data types.

  • rust-ffmpeg : Safe FFmpeg wrapper.

  • Simp : 🖼️ Simp is a fast and simple GPU-accelerated image manipulation program.

  • rust-cv/cv : Rust CV mono-repo. Contains pure-Rust dependencies which attempt to encapsulate the capability of OpenCV, OpenMVG, and vSLAM frameworks in a cohesive set of APIs.

  • jay3332/ril : Rust Imaging Library: A high-level imaging crate for Rust. crates.io/crates/ril

  • Futsch1/image-sieve : ImageSieve is a GUI based tool to assist in sorting images based on taken date and similarity, categorize them according to their creation date and archive them in a target folder.

Localization and Mapping

Path Planning

  • pathfinding : Pathfinding library for rust. This crate implements several pathfinding, flow, and graph algorithms in Rust.

  • rrt : RRT (Rapidly-exploring Random Tree) library in Rust.

  • gear : Collision Avoidance Path Planning in Rust-lang.

  • trajectory : trajectory interpolation library for Rust and robotics.

  • marcbone/s_curve : S-Curve trajectory generator written in rust.

  • Sollimann/bonsai : Rust implementation of behavior trees.

Motion Control

Game Engine

  • Bevy : Bevy is a refreshingly simple data-driven game engine built in Rust. It is free and open-source forever! bevyengine.org

  • Fyrox : 3D and 2D game engine written in Rust. fyrox.rs

  • Ambient : Ambient is a runtime for building high-performance multiplayer games and 3D applications, powered by WebAssembly, Rust and WebGPU. ambient.run

  • Rapier : Rapier is a set of 2D and 3D physics engines for games, animation, and robotics. rapier.rs

  • bevy_rapier : Official Rapier plugin for the Bevy game engine.

  • Parry : 2D and 3D collision-detection library for Rust. parry.rs

  • Eldiron : A cross platform classic RPG game creator written in Rust. www.eldiron.com

Machine Learning

Web Crawler

Web Framework

  • Yew : Yew is a modern Rust framework for creating multi-threaded front-end web apps with WebAssembly. yew.rs

  • Axum : Ergonomic and modular web framework built with Tokio, Tower, and Hyper.

  • Actix : Actix Web is a powerful, pragmatic, and extremely fast web framework for Rust. actix.rs

  • Rocket : A web framework for Rust. rocket.rs

  • Poem : A full-featured and easy-to-use web framework with the Rust programming language.

  • Salvo : Salvo is a powerful and simplest web server framework in Rust world. salvo.rs

  • Rouille : Rouille, a Rust web micro-framework.

  • Leptos : Build fast web applications with Rust.

  • Farm : Super fast web build tool written in Rust - 基于 Rust 的极速 web 构建引擎。 farm-fe.github.io

  • zino : zino is a full-featured web application framework for Rust with a focus on productivity and performance.

  • Hyper : A terminal built on web technologies. hyper.is

  • Deno : Deno is a simple, modern and secure runtime for JavaScript and TypeScript that uses V8 and is built in Rust. deno.land

  • SWC : SWC (stands for Speedy Web Compiler) is a super-fast TypeScript / JavaScript compiler written in Rust. swc.rs

  • tchatche.rs : tchatche.rs is a blazing fast chat application built with Axum and Yew.rs. tchatche.rs

  • tonic : A native gRPC client & server implementation with async/await support. docs.rs/tonic

WebAssembly Runtime

  • Wasmer : Wasmer is a fast and secure WebAssembly runtime that enables super lightweight containers to run anywhere: from Desktop to the Cloud, Edge and IoT devices. wasmer.io

  • wasmtime : A fast and secure runtime for WebAssembly. wasmtime.dev/

GUI

  • Slint : Slint is a toolkit to efficiently develop fluid graphical user interfaces for any display: embedded devices and desktop applications. slint-ui.com

  • Tauri : Tauri is a framework for building tiny, blazingly fast binaries for all major desktop platforms. Developers can integrate any front-end framework that compiles to HTML, JS and CSS for building their user interface. The backend of the application is a rust-sourced binary with an API that the front-end can interact with.

  • Pake : 🤱🏻 Turn any webpage into a desktop app with Rust. 🤱🏻 很简单的用 Rust 打包网页生成很小的桌面 App.

  • egui : egui: an easy-to-use immediate mode GUI in Rust that runs on both web and native.

  • Iced : A cross-platform GUI library for Rust focused on simplicity and type-safety. Inspired by Elm.

  • Xilem : An experimental Rust architecture for reactive UI.

  • Druid : A data-first Rust-native UI toolkit.

  • Dioxus : Friendly React-like GUI library for desktop, web, mobile, and more.

  • Floem : A native Rust UI library with fine-grained reactivity.

  • marek-g/rust-fui : MVVM Rust UI Framework Library.

  • KDAB/cxx-qt : Safe interop between Rust and Qt.

  • KDE/rust-qt-binding-generator : Generate bindings to use Rust code in Qt and QML.

  • apertus-open-source-cinema/narui : A react-inspired UI library for building multimedia desktop apps with rust and vulkan.

  • slint-ui/cargo-ui : This is a project to make a GUI for cargo, built using Slint.

Blogs

awesome-rust-list's People

Contributors

codingonion avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.