Need help with awesome-rust?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

rust-unofficial
21.1K Stars 1.4K Forks Creative Commons Zero v1.0 Universal 2.9K Commits 68 Opened issues

Description

A curated list of Rust code and resources.

Services available

!
?

Need anything else?

Contributors list

Awesome Rust build badge Track Awesome List

A curated list of Rust code and resources.

If you want to contribute, please read this.

Table of contents

Applications

See also Rust — Production organizations running Rust in production.

  • alacritty — A cross-platform, GPU enhanced terminal emulator
  • AnderEnder/s3find-rs — A command line utility to walk an Amazon S3 hierarchy, an analog of find for Amazon S3 build badge
  • andschwa/rust-genetic-algorithm — A genetic algorithm for academic benchmark problems build badge
  • asm-cli-rust — An interactive assembly shell written in rust.
  • ballista — PoC of distributed compute platform using Rust, Apache Arrow, and Kubernetes!
  • cloudflare/boringtun — A Userspace WireGuard VPN Implementation build badge
  • darrint/device-blocker — Limit screen time to children's various mobile devices by blocking internet access on the family Wifi router.
  • denoland/deno — A secure JavaScript/TypeScript runtime built with V8, Rust, and Tokio Build Status
  • dlecan/generic-dns-update — A tool to update DNS zonefiles with your IP address build badge
  • FactotumA system to programmatically run data pipelines build badge
  • fcsonline/drill — A HTTP load testing application inspired by Ansible syntax build badge
  • Fractalide — Simple Rust Microservices
  • habitat — An tool created by Chef to build, deploy, and manage applications.
  • Herd — an experimental HTTP load testing application
  • intecture/api — an API-driven server management and configuration tool build badge
  • ivanceras/diwata — A database administration tool for postgresql build badge
  • jedisct1/flowgger — A fast, simple and lightweight data collector
  • kbknapp/docli — A command line utility for managing DigitalOcean infrastructure build badge
  • kytan — High Performance Peer-to-Peer VPN
  • limonite — static blog/website generator build badge
  • linkerd/linkerd2-proxy — Ultralight service mesh for Kubernetes.
  • MaidSafe — A decentralized platform.
  • mdBook — A command line utility to create books from markdown files Build Status
  • nicohman/eidolon — A steam and drm-free game registry and launcher for linux and macosx build badge
  • notty — A new kind of terminal
  • Pijul — A patch-based distributed version control system
  • rsign — A simple command-line tool used to generate/sign/verify digital signatures designed to be compatible with Minisign Codeship Status for danielrangel/rsign
  • Rudr — A Kubernetes implementation of the Open Application Model specification
  • rx — Vi inspired Modern Pixel Art Editor
  • Sandstorm Collections App
  • Servo — A prototype web browser engine
  • tiny — A terminal IRC client
  • trust-dns — A DNS-server Build Status
  • updns — DNS proxy tool
  • Weld — Full fake REST API generator build badge
  • wezterm — A GPU-accelerated cross-platform terminal emulator and multiplexer
  • kalker - A scientific calculator that supports math-like syntax with user-defined variables, functions, derivation, integration, and complex numbers. Cross platform + WASM support Build Status

Audio and Music

  • enginesound — A GUI and command line application used to procedurally generate semi-realistic engine sounds. Featuring in-depth configuration, variable sample rate and a frequency analysis window.
  • indiscipline/zrtstr — A command line utility for checking if stereo wav files are faux-stereo (i.e. have identical channels) and converting such files to mono. build badge
  • Lyriek — A multi-threaded GTK 3 application for fetching the lyrics of the current playing song. build badge
  • ncspot - Cross-platform ncurses Spotify client, inspired by ncmpc and the likes. build badge
  • Phate6660/musinfo — A program to query music info from mpd and display it in a notification.
  • Phate6660/rsmpc — An implementation of mpc, but not directly as there will be a few differences.
  • Phate6660/rsmpc — A gtk frontend for mpd.
  • Polaris — A music streaming application. build badge
  • Spotify TUI — A Spotify client for the terminal written in Rust. Continuous Integration
  • Spotifyd — An open source Spotify client running as a UNIX daemon. Continuous Integration

Cryptocurrencies

  • Bitcoin Satoshi's Vision — A Rust library for working with Bitcoin SV .
  • cardano-cli — Cardano Command Line Interface (CLI)
  • ChainX — Fully Decentralized Interchain Crypto Asset Management on Polkadot.
  • CITA — A high performance blockchain kernel for enterprise users.
  • coinbase-pro-rs — Coinbase pro client in Rust, supports sync/async/websocket build badge
  • ethaddrgen — Custom Ethereum vanity address generator made in Rust build badge
  • Forest - Rust Filecoin implementation Build Status
  • Grin — Evolution of the MimbleWimble protocol
  • hdwallet — BIP-32 HD wallet related key derivation utilities.
  • Holochain — Scalable P2P alternative to blockchain for all those distributed apps you always wanted to build. The link to the old repo is this which is no longer maintained. Build Status
  • ibc-rs - Rust implementation of the Interblockchain Communication protocol
  • infincia/bip39-rs — Rust implementation of BIP39.
  • Joystream — A user governed video platform Build Status
  • Diem — Diem’s mission is to enable a simple global currency and financial infrastructure that empowers billions of people.
  • Lighthouse — Rust Ethereum 2.0 Client Build Status
  • near/nearcore — decentralized smart-contract platform for low-end mobile devices.
  • Nervos CKB — Nervos CKB is a public permissionless blockchain, the common knowledge layer of Nervos network.
  • Nimiq — Rust implementation of Nimiq node
  • Parity-Bitcoin — The Parity Bitcoin client build badge
  • Parity-Bridge — Bridge between any two ethereum-based networks
  • Parity-Ethereum — Fast, light, and robust Ethereum client
  • Parity-Zcash — Rust implementation of the Zcash protocol
  • Phala-Network/phala-blockchain — Confidential smart contract blockchain based on Intel SGX and Substrate
  • Polkadot — Heterogeneous multi‑chain technology with pooled security
  • rbtc — Convert BTC to any currency and vice-versa. Build Status
  • rust-cardano — Rust implementation of Cardano primitives, helpers, and related applications
  • Solana — Incredibly fast, highly scalable blockchain using Proof-of-History.
  • Substrate — Generic modular blockchain template written in Rust
  • tendermint-rs - Rust implementation of Tendermint blockchain data structures and clients
  • wagyu [wagyu] — Rust library for generating cryptocurrency wallets build badge
  • zcash — Zcash is an implementation of the "Zerocash" protocol.
  • YeeCo yeeroot — YeeCo yeeroot is a permissionless, secure, high performance and scalable public blockchain platform powered by full sharding technology on PoW consensus written in Rust

Database

  • indradb — Rust based graph database build badge
  • Materialize - Streaming SQL database powered by Timely Dataflow :heavydollarsign: Build status
  • noria — Dynamically changing, partially-stateful data-flow for web application backends build badge
  • Lucid — High performance and distributed KV store accessible through a HTTP API. Build Status
  • ParityDB — Fast and reliable database, optimised for read operation
  • PumpkinDB — an event sourcing database engine
  • seppo0010/rsedis — A Redis reimplementation in Rust build badge
  • Skytable — A multi-model NoSQL database GitHub Workflow Status
  • tikv — A distributed KV database in Rust Build Status
  • sled — A (beta) modern embedded database Build Status
  • TerminusDB - open source graph database and document store Build Status
  • Datafuse - A Modern Real-Time Data Processing & Analytics DBMS with Cloud-Native Architecture Build

Emulators

See also crates matching keyword 'emulator'.

Games

See also Games Made With Piston.

Graphics

Industrial automation

Observability

  • timberio/vector — A High-Performance, Logs, Metrics, & Events Router.
  • Mnwa/gtsa — A simple solution to proxy gelf messages (messages for Graylog) to Sentry
  • OpenTelemetry — OpenTelemetry provides a single set of APIs, libraries, agents, and collector services to capture distributed traces and metrics from your application. You can analyze them using Prometheus, Jaeger, and other observability tools. GitHub Actions CI
  • Scaphandre - A power consumption monitoring agent, to track host and each service power consumption and enable designing systems and applications for more sustainability. Designed to fit any monitoring toolchain (already supports prometheus, warp10, riemann...).

Operating systems

See also A comparison of operating systems written in Rust.

Productivity

  • espanso — A cross-platform Text Expander written in Rust Build Status
  • eureka — A CLI tool to input and store your ideas without leaving the terminal
  • pier-cli/pier — A central repository to manage (add, search metadata, etc.) all your one-liners, scripts, tools, and CLIs build badge
  • subilo - A continuous deployment agent Build Status

Security tools

System tools

  • ajeetdsouza/zoxide — A fast alternative to
    cd
    that learns your habits release
  • bandwhich — Terminal bandwidth utilization tool build badge
  • brocode/fblog — Small command-line JSON Log viewer build badge
  • buster/rrun — A command launcher for Linux, similar to gmrun build badge
  • cristianoliveira/funzzy — A configurable filesystem watcher inspired by entr build badge
  • dalance/procs — A modern replacement for 'ps' written by Rust Build Status
  • diskonaut — Terminal visual disk space navigator build badge
  • dust — A more intuitive version of du
  • ddh — Fast duplicate file finder build badge
  • fselect — Find files with SQL-like queries build badge
  • gitui - Blazing fast terminal client for git written in Rust. build
  • k0pernicus/zou — A download accelerator
  • Kondo - CLI & GUI tool for deleting software project artifacts and reclaiming disk space
  • lotabout/rargs [rargs] — xargs + awk with pattern matching support build badge
  • lotabout/skim — A fuzzy finder in pure rust build badge
  • mitnk/cicada — A bash-like Unix shell build badge
  • mmstick/concurr — Alternative to GNU Parallel w/ a client-server architecture
  • mmstick/fontfinder — GTK3 application for previewing and installing Google's fonts
  • mmstick/parallel — Reimplementation of GNU Parallel
  • mmstick/tv-renamer — A tv series renaming application with an optional GTK3 frontend. build badge
  • organize-rt — Organize files based on regex rules (file extensions by default). pipeline status
  • orhun/kmon — Linux Kernel Manager and Activity Monitor https://github.com/orhun/kmon/actions
  • Peltoche/lsd — An ls with a lot of pretty colors and awesome icons build
  • ogham/exa — A replacement for 'ls' build badge
  • pop-os/debrep — APT repository tool for building and managing an APT repo
  • pop-os/popsicle — GTK3 & CLI utility for flashing multiple USB devices in parallel
  • pueue — Manage your long running shell commands. GitHub Actions Workflow
  • Luminarys/synapse — Flexible and fast BitTorrent daemon. Build Status
  • pop-os/system76-power — Linux power management daemon (DBus-interface) with CLI tool.
  • mxseev/logram — Push log files' updates to Telegram
  • redox-os/ion — Next-generation system shell build badge
  • jamesbirtles/hotkey-rs — A library to listen to global hotkeys in Rust
  • nivekuil/rip - A safe and ergonomic alternative to
    rm
    build badge
  • sharkdp/bat — A cat(1) clone with wings. CICD
  • sharkdp/fd — A simple, fast and user-friendly alternative to find. Build Status
  • sitkevij/hex — A colorized hexdump terminal utility. build badge
  • slai11/goto — A simple and user-friendly way to jump to your indexed directories. GitHub Workflow Status
  • m4b/bingrep — Greps through binaries from various OSs and architectures, and colors them. build badge
  • uutils/coreutils — A cross-platform Rust rewrite of the GNU coreutils build badge
  • watchexec — Executes commands in response to file modifications build badge
  • XAMPPRocky/tokei — counts the lines of code build badge
  • yake — Yake is a task runner based on yaml files build badge
  • ytop - A TUI system monitor written in Rust Build status
  • cocom - NTP client purely written in Rust. Build Status

Text editors

  • amp — Inspired by Vi/Vim. build badge
  • gchp/iota — A simple text editor build badge
  • ilai-deutel/kibi — A tiny (≤1024 LOC) text editor with syntax highlighting, incremental search and more. build badge
  • vamolessa/pepper [pepper] — An opinionated modal editor to simplify code editing from the terminal build badge
  • mathall/rim — Vim-like text editor written in Rust
  • ox — An independent Rust text editor that runs in your terminal!
  • Remacs — A community-driven port of Emacs to Rust. build badge
  • xi-editor — A modern editor with a backend written in Rust.
  • xray — An experimental next-generation Electron-based text editor. build badge

Text processing

  • cpc - Parses and calculates strings of math with support for units and unit conversion, from
    1+2
    to
    1% of round(1 lightyear / 14!s to km/h)
    .
  • grex — A command-line tool and library for generating regular expressions from user-provided test cases build badge
  • dmerejkowsky/ruplacer — Find and replace text in source files Run tests
  • sstadick/hck - A faster and more featureful drop in replacement for
    cut
    build badge
  • ripgrep — combines the usability of The Silver Searcher with the raw speed of grep build badge
  • phiresky/ripgrep-all — ripgrep, but also search in PDFs, E-Books, Office documents, zip, tar.gz, etc. Build Status
  • replicadse/complate — An in-terminal text templating tool designed for standardizing messages (like for GIT commits). crates.io crates.io build badge
  • sd — Intuitive find & replace CLI
  • lavifb/todo_r — Find all your TODO notes with one command! build badge
  • whitfin/runiq — an efficient way to filter duplicate lines from unsorted input.
  • whitfin/bytelines — Read input lines as byte slices for high efficiency.
  • vishaltelangre/ff — Find files (ff) by name! build badge
  • xsv — A fast CSV command line tool (slicing, indexing, selecting, searching, sampling, etc.) build badge
  • Lisprez/sostupidsearch — A simple and fast string search tool for human beings

Image processing

Utilities

  • aleshaleksey/AZDice — A dice roll success distribution generator for tabletop homebrewers. build badge
  • yaa110/cb — Command line interface to manage clipboard Build Status
  • brycx/checkpwn — A Have I Been Pwned (HIBP) command-line utility tool that lets you easily check for compromised accounts and passwords.
  • vamolessa/copycat [copycat] — A simple clipboard cli interface for windows with text and bmp support
  • evansmurithi/cloak — A Command Line OTP (One Time Password) Authenticator application. build badge build badge
  • replydev/cotp - Trustworthy encrypted one time password authenticator app compatible with external backups. Actions Status
  • arthrp/consoletimer — Simple timer for your terminal. build badge
  • tversteeg/emplace — Synchronize installed packages on multiple machines
  • unrelentingtech/freepass — The free password manager for power users.
  • yoannfleurydev/gitweb — Open the current remote repository in your browser. GitHub Actions
  • mme — Command line tool to remember you commands that you sometimes forget. Build Status
  • raftario/licensor — write licenses to stdout GitHub Actions
  • arthrp/quick-skeleton — Project scaffolding tool, similar to Yeoman and Slush. build badge
  • repoch — Convert epoch to datetime and datetime to epoch build badge
  • whitfin/s3-concat — A command line tool to concatenate Amazon S3 files remotely using flexible patterns.
  • whitfin/s3-meta — A command line tool to gather metadata about your Amazon S3 buckets.
  • whitfin/s3-utils — A small tool containing utilities based around Amazon S3 to provide additional convenience APIs.
  • gorros/s3-edit-rs — A command line tool to edit a file directly on Amazon S3.
  • fcsonline/tmux-thumbs — A lightning fast version of tmux-fingers written in Rust, copy/pasting tmux like vimium/vimperator.
  • amar-laksh/workstation — A commandline tool to help you manage your workstation by distancing you from your screen, locking your screen when you aren't there among other things with OPENCV!
  • guoxbin/dtool — A useful command-line tool collection to assist development including conversion, codec, hashing, encryption, etc. Build Status
  • nomino — Batch rename utility for developers Build Status
  • barberousse — AWS Secrets Manager editor build
  • vamolessa/verco [verco] — A simple Git/Hg tui client focused on keyboard shortcuts

Video

Virtualization

Web

Web Servers

  • mufeedvh/binserve — A blazingly fast static web server with routing, templating, and security in a single binary you can set up with zero code build badge
  • thecoshman/http — Host These Things Please — A basic http server for hosting a folder fast and simply build badge
  • svenstaro/miniserve — A small, self-contained cross-platform CLI tool that allows you to just grab the binary and serve some file(s) via HTTP build badge
  • TheWaWaR/simple-http-server — simple static http server
  • wyhaya/see — Static HTTP file server Build Status
  • ronanyeah/rust-hasura — A demonstration of how a Rust GraphQL server can be used as a remote schema with Hasura Rust
  • joseluisq/static-web-server — A blazing fast and asynchronous web server for static files-serving. ⚡ CI

Development tools

  • clippy — Rust lints build badge
  • clog-tool/clog-cli — generates a changelog from git metadata (conventional changelog) build badge
  • dan-t/rusty-tags — create ctags/etags for a cargo project and all of its dependencies build badge
  • datanymizer/datanymizer - Powerful database anonymizer with flexible rules build badge
  • delta — A syntax-highlighter for git and diff output build badge
  • dotenv-linter — Linter for
    .env
    files build badge
  • frewsxcv/crate-deps — generates images of dependency graphs for crates hosted on crates.io
  • geiger — A program that list statistics related to usage of unsafe Rust code in a Rust crate and all its dependencies Build Status
  • git-journal — The Git Commit Message and Changelog Generation Framework build badge
  • gstats — command line tool to print a developer handy summary of all git repositories below current directory
  • rust-lang/rustfix — automatically applies the suggestions made by rustc
  • just — A handy command runner for project-specific tasks build badge
  • mask — A CLI task runner defined by a simple markdown file build badge
  • Module Linker — Extension that adds
    links to references in
    mod
    ,
    use
    and
    extern crate
    statements at GitHub.
  • ptags — A parallel universal-ctags wrapper for git repository Build Status
  • Racer — code completion for Rust build badge
  • rustfmt — A Rust code formatter build badge
  • Rustup — the Rust toolchain installer build badge
  • Rust Language Server — A server that runs in the background, providing IDEs, editors, and other tools with information about Rust programs
  • Rust Regex Playground — Web tool to evaluate rust regular expressions
  • Rust Search Extension — A handy browser extension to search crates and docs in address bar (omnibox). Build Status
  • artifact — the design doc tool made for developers Build Status
  • semantic-rs — automatic crate publishing build badge
  • fw — workspace productivity booster build badge
  • tinyrick a basic task dependency tool emphasizing Rust functions over raw shell commands.
  • scriptisto A language-agnostic "shebang interpreter" that enables you to write one file scripts in compiled languages. Build Status

Build system

  • Cargo — the Rust package manager
    • cargo-benchcmp — A utility to compare Rust micro-benchmarks build badge
    • cargo-bitbake — A cargo extension that can generate BitBake recipes utilizing the classes from meta-rust build badge
    • cargo-cache — inspect/manage/clean your cargo cache (
      ~/.cargo/
      /
      ${CARGO_HOME}
      ), print sizes etc Build Status
    • cargo-check — A wrapper around
      cargo rustc -- -Zno-trans
      which can be helpful for running a faster compile if you only need correctness checks build badge
    • cargo-count — lists source code counts and details about cargo projects, including unsafe statistics build badge
    • cargo-deb — Generates binary Debian packages build badge
    • cargo-deps — build dependency graphs of Rust projects build badge
    • cargo-do — run multiple cargo commands in a row build badge
    • cargo-ebuild — cargo extension that can generate ebuilds using the in-tree eclasses build badge
    • cargo-edit — allows you to add and list dependencies by reading/writing to your Cargo.toml file from the command line build badge
    • cargo-generate A generator of a rust project by leveraging a pre-existing git repository as a template.
    • cargo-get - Cargo plugin to easily query information from Cargo.toml files GitHub Workflow Status
    • cargo-graph — updated fork of
      cargo-dot
      with additional features. Unmaintained, see
      cargo-deps
      build badge
    • cargo-info — queries crates.io for crates details from command line build badge
    • cargo-license — A cargo subcommand to quickly view the licenses of all dependencies. build badge
    • cargo-make — Rust task runner and build tool. build badge
    • cargo-modules — A cargo plugin for showing a tree-like overview of a crate's modules. build badge
    • cargo-multi — runs specified cargo command on multiple crates build badge
    • cargo-outdated — displays when newer versions of Rust dependencies are available, or out of date build badge
    • cargo-release — tool for releasing git-managed cargo project, build, tag, publish, doc and push build badge
    • cargo-script — lets people quickly and easily run Rust "scripts" which can make use of Cargo's package ecosystem build badge
    • cargo-testify — watches files changes, runs tests and notifies about the result with friendly OS notification build badge
    • cargo-tree – Cargo subcommand that visualizes a crate's dependency graph in a tree-like format CircleCI
    • cargo-update — cargo subcommand for checking and applying updates to installed executables build badge
    • cargo-watch — utility for cargo to compile projects when sources change build badge
    • liuchong/cargo-x — A very simple third-party cargo subcommand to execute a custom command build badge
    • dtolnay/cargo-expand — Expand macros in your source code
  • CMake
  • Github actions
  • GitHub webhooks
    • snare — GitHub webhooks runner daemon
  • Webpack

Debugging

Deployment

Embedded

Rust Embedded

  • Cross compiling
    • japaric/rust-cross — everything you need to know about cross compiling Rust programs build badge
    • japaric/xargo — effortless cross compilation of Rust programs to custom bare-metal targets like ARM Cortex-M build badge
  • Raspberry Pi
  • Arduino

FFI

See also Foreign Function Interface, The Rust FFI Omnibus (a collection of examples of using code written in Rust from other languages) and FFI examples written in Rust.

IDEs

See also Are we (I)DE yet? and Rust Tools.

Pattern recognition

  • sfikas/rusteval — A tool used to evaluate the output of retrieval algorithms Build Status

Profiling

Services

  • deps.rs — Detect outdated or insecure dependencies
  • docs.rs — Automatic documentation generation of crates

Static analysis

[assert, static]

Testing

[testing]

  • laboratory — A simple, expressive unit test framework for Rust build
  • cucumber-rust — An implementation of the Cucumber testing framework for Rust. Build Status
  • demonstrate — Declarative Testing Framework Build Status
  • nrxus/faux Latest Version — A library to create mocks out of structs. build
  • httpmock — HTTP mocking build badge
  • mockiato — A strict, yet friendly mocking library for Rust 2018 build badge
  • mutagen — A source-level mutation testing framework (nightly only) build badge
  • AlKass/polish — Mini Testing/Test-Driven Framework Build Status Crates Package Status
  • proptest — property testing framework inspired by the Hypothesis framework for Python build badge
  • quickcheck — A Rust implementation of QuickCheck build badge
  • mockito — HTTP mocking build badge
  • speculate — An RSpec inspired minimal testing framework for Rust
  • rstest — Fixture-based test framework for Rust Build Status
  • ruspec — Write like Rspec testing framework with rust Build Status
  • rust-fuzz/afl.rs — A Rust fuzzer, using AFL build badge
  • tarpaulin — A code coverage tool designed for Rust build badge
  • trust — A Travis CI and AppVeyor template to test your Rust crate on 5 architectures and publish binary releases of it for Linux, macOS and Windows
  • fake-rs — A library for generating fake data build badge
  • goldenfile - A library providing a simple API for goldenfile testing. build badge
  • cargo-dinghy - A cargo extension to simplify running library tests and benches on smartphones and other small processor devices.

Transpiling

Libraries

  • Phate6660/nixinfo [crate] — A lib crate for gathering system info such as cpu, distro, environment, kernel, etc.
  • perf-monitor-rs — A toolkit designed to be a foundation for applications to monitor their performance. crates.io

Artificial Intelligence

Genetic algorithms

  • Martin1887/oxigen — Fast, parallel, extensible and adaptable genetic algorithm library. A example using this library solves the N Queens problem for N = 255 in only few seconds and using less than 1 MB of RAM.
  • innoave/genevo — Execute genetic algorithm (GA) simulations in a customizable and extensible way.
  • willi-kappler/darwin-rs — Evolutionary algorithms with Rust Build Status
  • m-decoster/RsGenetic — Genetic Algorithm library in Rust. In maintenance mode.
  • mneumann/evo-rs — Evolutionary Algorithm Library for Rust. Without changes for 3 years.
  • yurytsoy/revonet — Rust implementation of real-coded GA for solving optimization problems and training of neural networks.
  • pkalivas/radiate — A customizable parallel genetic programming engine capable of evolving solutions for supervised, unsupervised, and reinforcement learning problems. Comes with complete and customizable implementation of NEAT and Evtree. Build Status Crates.io

Machine learning

[machine learning]

See also About Rust’s Machine Learning Community and Are we learning yet?.

Astronomy

[astronomy]

Asynchronous

  • zonyitoo/coio-rs — A coroutine I/O library with a working-stealing scheduler build badge
  • dpc/mioco — Scalable, coroutine-based, asynchronous IO handling library build badge
  • TeaEntityLab/fpRust — Monad/MonadIO, Handler, Coroutine/doNotation, Functional Programming features for Rust build badge
  • rust-lang/futures-rs — Zero-cost futures in Rust build badge
  • mio — MIO is a lightweight IO library for Rust with a focus on adding as little overhead as possible over the OS abstractions build badge
  • Xudong-Huang/may — rust stackful coroutine library build badge
  • rustasync/runtime — A runtime agnostic API designed to make async feel like its part of stdlib Crates.io Build status

Audio and Music

[audio]

Authentication

  • Keats/jsonwebtokenJSON Web Token lib in rust Build Status
  • sgrust01/jwtvault — Async library to manage and orchestrate JWT workflow Build Status
  • oauth2 — Extensible, strongly-typed Rust OAuth2 client library Build Status
  • oxide-auth — A OAuth2 server library, for use in combination with actix or other frontends, featuring a set of configurable and pluggable backends Build Status
  • yup-oauth2 — An oauth2 client implementation providing the Device, Installed and Service Account flows Build Status

Automotive

Bioinformatics

Caching

Concurrency

Cloud

Command-line

Compression

Computation

Configuration

Cryptography

[crypto, cryptography]

Database

[database]

Data processing

  • amv-dev/yata — high perfomance technical analysis library Build Status
  • bluss/ndarray — N-dimensional array with array views, multidimensional slicing, and efficient operations
  • kernelmachine/utah — Dataframe structure and operations in Rust
  • pola-rs/polars - Fast feature complete DataFrame library Build and test
  • weld-project/weld — High-performance runtime for data analytics applications

Data streaming

Data structures

Data visualization

Date and time

[date, time]

Distributed systems

Email

[email, imap, smtp]

Encoding

[encoding]

Filesystem

[filesystem] * Libraries * jonhkr/rust-file-seq -> Fail-safe sequence implementation that uses the file system as store Crates.io GitHub Workflow Status * Operations * pop-os/dbus-udisks2 -> UDisks2 DBus API * pop-os/sys-mount — High level abstraction for the

mount
/
umount2
system calls. * vitiral/path_abs — Absolute serializable path types and associated methods. build badge * webdesus/fs_extra — expanding opportunities standard library std::fs and std::io build badge * Temporary Files * rust-lang-deprecated/tempdir — temporary directory library build badge * Stebalien/tempfile — temporary file library build badge * Stebalien/xattr [xattr] — list and manipulate unix extended file attributes build badge * zboxfs/zbox [zbox] — Zero-details, privacy-focused embeddable file system. build badge

Functional Programming

[functional programming] * Prelude * JasonShin/fp-core.rs — A library for functional programming in Rust Build Status

Game development

See also Are we game yet? * Allegro * SiegeLord/RustAllegroAllegro 5 bindings build badge * Challonge * vityafx/challonge-rs [challonge] — Client library for the Challonge REST API. Helps to organize tournaments. build badge * Corange * lucidscape/corange-rsCorange bindings * Entity-Component Systems (ECS) * amethyst/specs — Specs Parallel ECS build badge * legion — A feature rich high performance ECS library with minimal boilerplate build badge * Game Engines * Amethyst — Data-oriented game engine - Crates.io license Crates.io * Bevy is a refreshingly simple data-driven game engine built in Rust. - Crates.io license Crates.io * ggez — A lightweight game framework for making 2D games with minimum friction - Crates.io license Crates.io * harmony — A modern 3D/2D game engine that uses wgpu * Kiss3d — A Keep It Simple, Stupid 3d graphics engine written with Rust Crates.io * oxidator — A real time strategy game/engine written with Rust and WebGPU * PistonCrates.io Crates.io Crates.io * RG3D — Rust Game engine 3D Crates.io license Crates.io * Unrust — unrust — A pure rust based (webgl 2.0 / native) game engine * Godot * godot-rust/godot-rust [gdnative] - Rust bindings to the Godot game engine build badge * SDL [sdl] * brson/rust-sdl — SDL1 bindings build badge * Rust-SDL2/rust-sdl2 — SDL2 bindings build badge * SFML * jeremyletang/rust-sfmlSFML bindings build badge * Tcod-rs * tomassedovic/tcod-rs — Libtcod bindings for Rust. * Victorem * VictoremWinbringer/Victorem [Victorem] — Easy UDP Game Server and UDP Client framework for creating simple 2D and 3D online game prototype build badge * Voxlap * bbodi/rust-voxlapVoxlap bindings * Awesome wgpu — A curated list of wgpu code and resources

Geospatial

[geo, gis]

Graphics

[graphics]

Graph processing

GUI

[gui]

Image processing

Language specification

  • shnewto/bnf — A library for parsing Backus–Naur form context-free grammars. build badge

Logging

[log]

  • seanmonstar/pretty-env-logger — A pretty, easy-to-use logger for Rust. Build Status
  • rust-lang/log — Logging implementation for Rust Build Status
  • slog-rs/slog — Structured, composable logging for Rust Build Status
  • estk/log4rs — highly configurable logging framework modeled after Java's Logback and log4j libraries CircleCI
  • tokio-rs/tracing — An application level tracing framework for async-aware structured logging, error handling, metrics, and more Build Status
  • jesusprubio/leg — Elegant print for lazy devs. Make your CLIs nicer with minimal effort. Build Status

Macro

  • cute
    • mattgathu/cute — Macro for Python-esque list comprehensions in Rust. Build Status
  • hado
    • ludat/hado-rs — A little macro for writing haskell-like do expressions without too much ceremony
  • Linq-in-Rust - Macro and methods for C#-LINQ-like expressions. CI

Markup language

Mobile

Geal/rustonmobile

  • Android
  • iOS
    • TimNN/cargo-lipo — A cargo lipo subcommand which automatically creates a universal library for use with your iOS application. build badge
    • vhbit/ObjCrust — using Rust to create an iOS static library
  • Pebble
    • andars/pebble.rs — A crate that allows Rust to be used to develop Pebble applications.
  • Android / iOS
    • ivanschuetz/rustandroidios — An example of using a shared Rust lib for Android and iOS using rust-swig and cbindgen respectively.

Network programming

Parsing

Peripherals

Platform specific

Scripting

[scripting]

Simulation

[simulation]

  • bigbang - Gravitational and collisional n-body simulation with optional GPU acceleration build badge
  • nyx-space - High fidelity, fast, reliable and validated astrodynamical toolkit library, used for spacecraft mission design and orbit determination Build Status

    Task scheduling

  • delay-timer — Time-manager of delayed tasks. Like crontab, but asynchronous tasks are possible. Build

Template engine

Text processing

Text search

Unsafe

  • zerocopy — Utilities for safely reinterpreting arbitrary byte sequences as native Rust types

Virtualization

Web programming

See also Are we web yet? and Rust web framework comparison.

Registries

A registry allows you to publish your Rust libraries as crate packages, to share them with others publicly and privately.

  • Crates — The official public registry for Rust/Cargo.
  • Cloudsmith :heavydollarsign: — A fully managed package management SaaS, with first-class support for public and private Cargo/Rust registries (plus many others). Has a generous free-tier and is also completely free for open-source.

Resources

License

CC0

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.