https://github.com/awesome-rust-com/awesome-rust
Awesome Rust
https://github.com/awesome-rust-com/awesome-rust
List: awesome-rust
awesome awesome-rust rust
Last synced: about 1 year ago
JSON representation
Awesome Rust
- Host: GitHub
- URL: https://github.com/awesome-rust-com/awesome-rust
- Owner: awesome-rust-com
- Created: 2019-08-29T07:24:51.000Z (almost 7 years ago)
- Default Branch: master
- Last Pushed: 2024-03-11T02:25:25.000Z (over 2 years ago)
- Last Synced: 2024-05-20T22:39:26.462Z (about 2 years ago)
- Topics: awesome, awesome-rust, rust
- Language: Rust
- Homepage: https://awesome-rust.com
- Size: 2.09 MB
- Stars: 633
- Watchers: 22
- Forks: 55
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
Awesome Lists containing this project
- ultimate-awesome - awesome-rust - Awesome Rust. (Programming Language Lists / Rust Lists)
- awesome-game-console-development - [EN: Github
- awesome-rust-list - awesome-rust-com/awesome-rust - rust-com/awesome-rust?style=social"/> :A curated list of awesome Rust frameworks, libraries and software. [awesome-rust](https://awesome-rust.com/) (Summary)
README
# Awesome Rust
[](https://github.com/awesome-rust-com/awesome-rust/actions/workflows/lint.yml)
A curated list of awesome Rust frameworks, libraries and software. Inspired by [awesome-go](https://github.com/avelino/awesome-go).
### Contributing
Please take a quick gander at the [contribution guidelines](https://github.com/awesome-rust-com/awesome-rust/blob/master/CONTRIBUTING.md) first. Thanks to all [contributors](https://github.com/awesome-rust-com/awesome-rust/graphs/contributors); you rock!
## Table of contents
* [Applications](#applications)
* [Audio](#audio)
* [Cryptocurrencies](#cryptocurrencies)
* [Database](#database)
* [Emulators](#emulators)
* [Games](#games)
* [Graphics](#graphics)
* [Industrial automation](#industrial-automation)
* [Operating systems](#operating-systems)
* [Productivity](#productivity)
* [Security tools](#security-tools)
* [System tools](#system-tools)
* [Text editors](#text-editors)
* [Text processing](#text-processing)
* [Utilities](#utilities)
* [Video](#video)
* [Virtualization](#virtualization)
* [Window managers](#window-managers)
* [Web](#web)
* [Web Servers](#web-servers)
* [Development tools](#development-tools)
* [Build system](#build-system)
* [Debugging](#debugging)
* [Deployment](#deployment)
* [Embedded](#embedded)
* [FFI](#ffi)
* [IDEs](#ides)
* [Pattern recognition](#pattern-recognition)
* [Profiling](#profiling)
* [Services](#services)
* [Static analysis](#static-analysis)
* [Testing](#testing)
* [Transpiling](#transpiling)
* [Libraries](#libraries)
* [Artificial Intelligence](#artificial-intelligence)
* [Genetic algorithms](#genetic-algorithms)
* [Machine learning](#machine-learning)
* [Astronomy](#astronomy)
* [Asynchronous](#asynchronous)
* [Audio](#audio-1)
* [Authentication](#authentication)
* [Automotive](#automotive)
* [Bioinformatics](#bioinformatics)
* [Caching](#caching)
* [Cloud](#cloud)
* [Command-line](#command-line)
* [Compression](#compression)
* [Computation](#computation)
* [Concurrency](#concurrency)
* [Configuration](#configuration)
* [Cryptography](#cryptography)
* [Database](#database-1)
* [Data processing](#data-processing)
* [Data structures](#data-structures)
* [Data visualization](#data-visualization)
* [Date and time](#date-and-time)
* [Distributed systems](#distributed-systems)
* [Email](#email)
* [Encoding](#encoding)
* [Filesystem](#filesystem)
* [Game development](#game-development)
* [Geospatial](#geospatial)
* [Graphics](#graphics-1)
* [Graph processing](#graph-processing)
* [GUI](#gui)
* [Image processing](#image-processing)
* [Industrial automation](#industrial-automation)
* [Language specification](#language-specification)
* [Logging](#logging)
* [Macro](#macro)
* [Markup language](#markup-language)
* [Mobile](#mobile)
* [Network programming](#network-programming)
* [Parsing](#parsing)
* [Peripherals](#peripherals)
* [Platform specific](#platform-specific)
* [Scripting](#scripting)
* [Template engine](#template-engine)
* [Text processing](#text-processing-1)
* [Text search](#text-search)
* [Unsafe](#unsafe)
* [Virtualization](#virtualization-1)
* [Web programming](#web-programming)
* [Registries](#registries)
* [Resources](#resources)
* [License](#license)
## Applications
See also [Rust — Production](https://www.rust-lang.org/production)(organizations running Rust in production).
* [alacritty](https://github.com/jwilm/alacritty) — A cross-platform, GPU enhanced terminal emulator
* [asm-cli-rust](https://github.com/cch123/asm-cli-rust) — interative assembly shell written in rust.
* [AnderEnder/s3find-rs](https://github.com/AnderEnder/s3find-rs) — A command line utility to walk an Amazon S3 hierarchy, an analog of find for Amazon S3 [
](https://travis-ci.org/AnderEnder/s3find-rs)
* [cloudflare/boringtun](https://github.com/cloudflare/boringtun) — A Userspace WireGuard VPN Implementation [
](https://crates.io/crates/boringtun)
* [denoland/deno](https://github.com/denoland/deno) — A secure JavaScript/TypeScript runtime built with V8, Rust, and Tokio [
](https://travis-ci.com/denoland/deno)
* [ivanceras/diwata](https://github.com/ivanceras/diwata) — A database administration tool for postgresql [
](https://travis-ci.org/ivanceras/diwata)
* [linkerd/linkerd2-proxy](https://github.com/linkerd/linkerd2-proxy) — Ultralight service mesh for Kubernetes.
* [darrint/device-blocker](https://github.com/darrint/device-blocker) — Limit screen time to children's various mobile devices by blocking internet access on the family Wifi router.
* [dlecan/generic-dns-update](https://github.com/dlecan/generic-dns-update) — A tool to update DNS zonefiles with your IP address [
](https://travis-ci.org/dlecan/generic-dns-update)
* [Factotum](https://github.com/snowplow/factotum) — [A system to programmatically run data pipelines](https://snowplowanalytics.com/blog/2016/04/09/introducing-factotum-data-pipeline-runner/) [
](https://travis-ci.org/snowplow/factotum)
* [fcsonline/drill](https://github.com/fcsonline/drill) — A HTTP load testing application inspired by Ansible syntax [
](https://travis-ci.org/fcsonline/drill)
* [Fractalide](https://github.com/fractalide/fractalide) — Simple Rust Microservices
* [habitat](https://www.habitat.sh) — An tool created by [Chef](https://www.chef.io/) to build, deploy, and manage applications.
* [Herd](https://github.com/imjacobclark/Herd) — an experimental HTTP load testing application
* [intecture/api](https://github.com/intecture/api) — an API-driven server management and configuration tool [
](https://travis-ci.org/intecture/api)
* [jedisct1/flowgger](https://github.com/jedisct1/flowgger) — A fast, simple and lightweight data collector
* [kbknapp/docli](https://github.com/kbknapp/docli-rs) — A command line utility for managing DigitalOcean infrastructure [
](https://travis-ci.org/kbknapp/docli-rs)
* [limonite](https://crates.io/crates/limonite) — static blog/website generator [
](https://travis-ci.org/qmx/limonite)
* [MaidSafe](https://maidsafe.net) — A decentralized platform.
* [mdBook](https://crates.io/crates/mdbook) — A command line utility to create books from markdown files [
](https://travis-ci.org/azerupi/mdBook)
* [nicohman/eidolon](https://github.com/nicohman/eidolon) — A steam and drm-free game registry and launcher for linux and macosx [
](https://travis-ci.org/nicohman/eidolon)
* [notty](https://github.com/withoutboats/notty) — A new kind of terminal
* [Pijul](https://pijul.org) — A patch-based distributed version control system
* [rsign](https://crates.io/crates/rsign) — A simple command-line tool used to generate/sign/verify digital signatures designed to be compatible with Minisign [](https://app.codeship.com/projects/244452)
* [Sandstorm Collections App](https://github.com/sandstorm-io/collections-app)
* [Servo](https://github.com/servo/servo) — A prototype web browser engine
* [trust-dns](https://crates.io/crates/trust-dns) — A DNS-server [
](https://travis-ci.org/bluejekyll/trust-dns)
* [Weld](https://github.com/serayuzgur/weld) — Full fake REST API generator [
](https://travis-ci.org/serayuzgur/weld)
* [kytan](https://github.com/changlan/kytan) - High Performance Peer-to-Peer VPN
* [WezTerm](https://github.com/wez/wezterm) — A GPU-accelerated cross-platform terminal emulator and multiplexer written by @wez and implemented in Rust
### Audio
* [indiscipline/zrtstr](https://github.com/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. [
](https://travis-ci.org/indiscipline/zrtstr)
### Cryptocurrencies
* [Bitcoin Satoshi's Vision](https://github.com/brentongunning/rust-sv) — A Rust library for working with Bitcoin SV .
* [cardano-cli](https://github.com/input-output-hk/cardano-cli) — Cardano Command Line Interface (CLI)
* [ChainX](https://github.com/chainx-org/ChainX) — Fully Decentralized Interchain Crypto Asset Management on Polkadot.
* [coinbase-pro-rs](https://github.com/inv2004/coinbase-pro-rs) — Coinbase pro client in Rust, supports sync/async/websocket [
](https://travis-ci.org/inv2004/coinbase-pro-rs)
* [ethaddrgen](https://github.com/Limeth/ethaddrgen) — Custom Ethereum vanity address generator made in Rust [
](https://travis-ci.org/Limeth/ethaddrgen)
* [Grin](https://github.com/mimblewimble/grin/) — Evolution of the MimbleWimble protocol
* [hdwallet](https://github.com/jjyr/hdwallet) — BIP-32 HD wallet related key derivation utilities.
* [infincia/bip39-rs](https://github.com/infincia/bip39-rs) — Rust implementation of BIP39.
* [Joystream](https://github.com/Joystream/substrate-runtime-joystream) — A user governed video platform.
* [nearprotocol/nearcore](https://github.com/nearprotocol/nearcore) — decentralized smart-contract platform for low-end mobile devices.
* [Nervos CKB](https://github.com/nervosnetwork/ckb) — Nervos CKB is a public permissionless blockchain, the common knowledge layer of Nervos network.
* [Nimiq](https://github.com/nimiq/core-rs) — Rust implementation of Nimiq node [
](https://travis-ci.com/nimiq/core-rs)
* [Parity-Bitcoin](https://github.com/paritytech/parity-bitcoin) — The Parity Bitcoin client [
](https://travis-ci.com/paritytech/parity-bitcoin)
* [Parity-Bridge](https://github.com/paritytech/parity-bridge) — Bridge between any two ethereum-based networks
* [Parity-Ethereum](https://github.com/paritytech/parity-ethereum) — Fast, light, and robust Ethereum client
* [Parity-Zcash](https://github.com/paritytech/parity-zcash) — Rust implementation of the Zcash protocol
* [Polkadot](https://github.com/paritytech/polkadot) — Heterogeneous multi‑chain technology with pooled security
* [rbtc](https://github.com/lucawen/rbtc) — Convert BTC to any currency and vice-versa. [
](https://travis-ci.com/lucawen/rbtc/)
* [rust-cardano](https://github.com/input-output-hk/rust-cardano) — Rust implementation of Cardano primitives, helpers, and related applications
* [Substrate](https://github.com/paritytech/substrate) — Generic modular blockchain template written in Rust
* [wagu](https://crates.io/crates/wagu) — Generate a wallet for any cryptocurrency [
](https://api.travis-ci.com/ArgusObserver/wagu.svg?branch=master)
* [zcash](https://github.com/zcash/zcash) — Zcash is an implementation of the "Zerocash" protocol.
* [Holochain](https://github.com/holochain/holochain-rust) — Scalable P2P alternative to blockchain for all those distributed apps you always wanted to build [](https://travis-ci.com/holochain/holochain-rust)
### Database
* [indradb](https://crates.io/crates/indradb) — Rust based graph database [
](https://travis-ci.org/indradb/indradb)
* [noria](https://crates.io/crates/noria) — Dynamically changing, partially-stateful data-flow for web application backends [
](https://travis-ci.org/mit-pdos/noria)
* [PumpkinDB](https://github.com/PumpkinDB/PumpkinDB) — an event sourcing database engine [
](https://travis-ci.org/PumpkinDB/PumpkinDB)
* [seppo0010/rsedis](https://github.com/seppo0010/rsedis) — A Redis reimplementation in Rust [
](https://travis-ci.org/seppo0010/rsedis)
* [ParityDB](https://github.com/paritytech/paritydb) — Fast and reliable database, optimised for read operation
[
](https://travis-ci.org/paritytech/paritydb)
* [SurrealDB](https://github.com/surrealdb/surrealdb) — A scalable, distributed, document-graph database in Rust [
](https://github.com/surrealdb/surrealdb/actions)
* [tikv](https://github.com/tikv/tikv) — A distributed KV database in Rust [
](https://circleci.com/gh/tikv/tikv)
### Emulators
See also [crates matching keyword 'emulator'](https://crates.io/keywords/emulator).
* Commodore 64
* [kondrak/rust64](https://github.com/kondrak/rust64) — [
](https://travis-ci.org/kondrak/rust64)
* Gameboy
* [Gekkio/mooneye-gb](https://github.com/Gekkio/mooneye-gb) — [
](https://travis-ci.org/Gekkio/mooneye-gb)
* [mvdnes/rboy](https://github.com/mvdnes/rboy) — [
](https://travis-ci.org/mvdnes/rboy)
* [NivenT/RGB](https://github.com/nivent/RGB) — [
](https://travis-ci.org/NivenT/RGB)
* [mohanson/gameboy](https://github.com/mohanson/gameboy) — Full featured Cross-platform GameBoy emulator. Forever boys!.
* NES
* [iamsix/oxidenes](https://github.com/iamsix/oxidenes) — [
](https://travis-ci.org/iamsix/oxidenes)
* [koute/pinky](https://github.com/koute/pinky) — [
](https://travis-ci.org/koute/pinky)
* [pcwalton/sprocketnes](https://github.com/pcwalton/sprocketnes) — [
](https://travis-ci.org/pcwalton/sprocketnes)
* Playstation
* [simias/rustation](https://github.com/simias/rustation) — [
](https://travis-ci.org/simias/rustation)
* ZX Spectrum
* [pacmancoder/rustzx](https://github.com/pacmancoder/rustzx) — [
](https://travis-ci.org/pacmancoder/rustzx)
* [rodrigorc/raze](https://github.com/rodrigorc/raze) — For WebAssembly, [live version here](https://rodrigorc.github.io/raze/)
* Virtual Boy
* [emu-rs/rustual-boy](https://github.com/emu-rs/rustual-boy) — [
](https://travis-ci.org/emu-rs/rustual-boy)
* Intel 8080 CPU
* [mohanson/i8080](https://github.com/mohanson/i8080) — Intel 8080 cpu emulator by Rust
* Emulator Development tools
* SNES
* [ioncodes/snesutilities](https://github.com/ioncodes/snesutilities) — ROM analyser/extractor
### Games
See also [Games Made With Piston](https://github.com/PistonDevelopers/piston/wiki/Games-Made-With-Piston).
* [lifthrasiir/angolmois-rust](https://github.com/lifthrasiir/angolmois-rust) — A minimalistic music video game which supports the BMS format [
](https://travis-ci.org/lifthrasiir/angolmois-rust)
* [swatteau/sokoban-rs](https://github.com/swatteau/sokoban-rs) — A Sokoban implementation
* [Zone of Control](https://github.com/ozkriff/zoc) — A turn-based hexagonal strategy game [
](https://travis-ci.org/ozkriff/zoc). Discontinued. There are no forks.
* [rhex](https://github.com/dpc/rhex) — hexagonal ascii roguelike
* [citybound](https://github.com/citybound/citybound) — The city sim you deserve
* [ozkriff/zemeroth](https://github.com/ozkriff/zemeroth) — A small 2D turn-based hexagonal strategy game [
](https://travis-ci.org/ozkriff/zemeroth)
* [rsaarelm/magog](https://github.com/rsaarelm/magog) — A roguelike game in Rust
* [schulke-214/rsnake](https://github.com/schulke-214/rsnake) — Snake written in Rust.
* [schulke-214/connect-four](https://github.com/schulke-214/connect-four) — A simple connect four implementation.
* [cristicbz/rust-doom](https://github.com/cristicbz/rust-doom) — A renderer for Doom, may progress to being a playable game [
](https://travis-ci.org/cristicbz/rust-doom)
* [Thinkofname/rust-quake](https://github.com/Thinkofname/rust-quake) — Quake map renderer in Rust
* [aleshaleksey/TGWM](https://github.com/aleshaleksey/TGWM) — An RPG with turned-based mechanics (work in progress) [
](https://travis-ci.org/aleshaleksey/TGWM)
* [garkimasera/rusted-ruins](https://github.com/garkimasera/rusted-ruins) — Extensible open world rogue like game with pixel art [
](https://travis-ci.org/garkimasera/rusted-ruins)
* [Veloren](https://gitlab.com/veloren/veloren) — An open-world, open-source multiplayer voxel RPG.
### Graphics
* [Limeth/euclider](https://github.com/Limeth/euclider) — A real-time 4D CPU ray tracer [
](https://travis-ci.org/Limeth/euclider)
* [ivanceras/svgbob](https://github.com/ivanceras/svgbob) — converts ASCII diagrams into SVG graphics [
](https://travis-ci.org/ivanceras/svgbob)
* [RazrFalcon/svgcleaner](https://github.com/RazrFalcon/svgcleaner) — tidies SVG graphics
* [Twinklebear/tray_rust](https://github.com/Twinklebear/tray_rust) — A ray tracer [
](https://travis-ci.org/Twinklebear/tray_rust)
* Image processing:
* [spejss/Image-Processing-CLI-in-Rust](https://github.com/spejss/Image-Processing-CLI-in-Rust) — CLI for processing images, generating histograms. [](https://travis-ci.org/spejss/Image-Processing-CLI-in-Rust)
### Industrial automation
* [slowtec/tokio-modbus](https://github.com/slowtec/tokio-modbus) — A [tokio](https://tokio.rs)-based [modbus](http://modbus.org) library. [](https://travis-ci.org/slowtec/tokio-modbus)
* [locka99/opcua](https://github.com/locka99/opcua) — A pure rust [OPC UA](https://opcfoundation.org/about/opc-technologies/opc-ua/) library.
* [BiancoRoyal/modbus-iiot-rust](https://github.com/BiancoRoyal/modbus-iiot-rust) — A pure rust [modbus](http://modbus.org) library with no or less dependencies. [](https://travis-ci.org/BiancoRoyal/modbus-iiot-rust)
### Operating systems
See also [A comparison of operating systems written in Rust](https://github.com/flosse/rust-os-comparison).
* [redox-os/redox](https://gitlab.redox-os.org/redox-os/redox) — [
](https://travis-ci.org/redox-os/redox)
* [thepowersgang/rust_os](https://github.com/thepowersgang/rust_os) — [
](https://travis-ci.org/thepowersgang/rust_os)
* [tock/tock](https://github.com/tock/tock) — A secure embedded operating system for Cortex-M based microcontrollers
* [nebulet/nebulet](https://github.com/nebulet/nebulet) — A microkernel that implements a WebAssembly "usermode" that runs in Ring 0.
### Productivity
* [eureka](https://crates.io/crates/eureka) — A CLI tool to input and store your ideas without leaving the terminal
* [BenSchZA/pier](https://github.com/BenSchZA/pier) — A central repository to manage (add, search metadata, etc.) all your one-liners, scripts, tools, and CLIs [
](https://travis-ci.com/BenSchZA/pier)
### Security tools
* [arvancloud/libinjection-rs](https://github.com/arvancloud/libinjection-rs) — Rust bindings for [libinjection](https://github.com/client9/libinjection) [
](https://travis-ci.org/arvancloud/libinjection-rs)
* [kpcyrd/badtouch](https://github.com/kpcyrd/badtouch) — A scriptable network authentication cracker [
](https://travis-ci.org/kpcyrd/badtouch)
* [replydev/cotp](https://github.com/replydev/cotp) - Trustworthy, encrypted, command-line TOTP/HOTP authenticator app with import functionality. [](https://github.com/replydev/cotp/actions)
* [kpcyrd/rshijack](https://github.com/kpcyrd/rshijack) — A TCP connection hijacker, rust rewrite of shijack [
](https://travis-ci.org/kpcyrd/rshijack)
* [kpcyrd/sniffglue](https://github.com/kpcyrd/sniffglue) — A secure multithreaded packet sniffer [
](https://travis-ci.org/kpcyrd/sniffglue)
* [kpcyrd/sn0int](https://github.com/kpcyrd/sn0int) — A semi-automatic OSINT framework and package manager [
](https://travis-ci.org/kpcyrd/sn0int)
* [Gymmasssorla/anevicon](https://github.com/Gymmasssorla/anevicon) — The most powerful UDP-based load generator, written in Rust [
](https://travis-ci.com/Gymmasssorla/anevicon)
* [Gymmasssorla/finshir](https://github.com/Gymmasssorla/finshir) — A coroutines-driven Low & Slow traffic generator, written in Rust [
](https://travis-ci.com/Gymmasssorla/finshir)
* [Ockam](https://github.com/ockam-network/ockam) — A suite of tools, programming libraries and infrastructure that make it easy to build devices that communicate securely, privately and trustfully with cloud services and other devices. [
](https://github.com/ockam-network/ockam/actions?query=workflow%3A%22Continuous+Integration%22)
### System tools
* [brocode/fblog](https://github.com/brocode/fblog) — Small command-line JSON Log viewer [
](https://travis-ci.org/brocode/fblog)
* [buster/rrun](https://github.com/buster/rrun) — A command launcher for Linux, similar to gmrun [
](https://travis-ci.org/buster/rrun)
* [cristianoliveira/funzzy](https://github.com/cristianoliveira/funzzy) — A configurable filesystem watcher inspired by [entr](http://entrproject.org/) [
](https://travis-ci.org/cristianoliveira/funzzy)
* [dalance/procs](https://github.com/dalance/procs) — A modern replacement for 'ps' written by Rust [
](https://dev.azure.com/dalance/procs/_build/results?buildId=250)
* [ddh](https://github.com/darakian/ddh) — Fast duplicate file finder [
](https://travis-ci.org/darakian/ddh)
* [fselect](https://crates.io/crates/fselect) — Find files with SQL-like queries [
](https://travis-ci.org/jhspetersson/fselect)
* [j0ru/kickoff](https://github.com/j0ru/kickoff) — Fast wayland program launcher
* [k0pernicus/zou](https://github.com/k0pernicus/zou) — A download accelerator [
](https://travis-ci.org/k0pernicus/zou)
* [lotabout/rargs](https://github.com/lotabout/rargs) [[rargs](https://crates.io/crates/rargs)] — xargs + awk with pattern matching support [
](https://travis-ci.org/lotabout/rargs)
* [lotabout/skim](https://github.com/lotabout/skim) — A fuzzy finder in pure rust [
](https://travis-ci.org/lotabout/skim)
* [mitnk/cicada](https://github.com/mitnk/cicada) — A bash-like Unix shell [
](https://travis-ci.org/mitnk/cicada)
* [mmstick/concurr](https://github.com/mmstick/concurr) — Alternative to GNU Parallel w/ a client-server architecture
* [mmstick/fontfinder](https://github.com/mmstick/fontfinder) — GTK3 application for previewing and installing Google's fonts
* [mmstick/parallel](https://github.com/mmstick/parallel) — Reimplementation of GNU Parallel
* [mmstick/tv-renamer](https://github.com/mmstick/tv-renamer) — A tv series renaming application with an optional GTK3 frontend. [
](https://travis-ci.org/mmstick/tv-renamer)
* [netscanner](https://github.com/Chleba/netscanner) - TUI Network Scanner
* [Peltoche/lsd](https://github.com/Peltoche/lsd) — An ls with a lot of pretty colors and awesome icons [
](https://travis-ci.org/Peltoche/lsd)
* [ogham/exa](https://github.com/ogham/exa) — A replacement for 'ls' [
](https://travis-ci.org/ogham/exa)
* [pop-os/debrep](https://github.com/pop-os/debrepbuild) — APT repository tool for building and managing an APT repo
* [pop-os/popsicle](https://github.com/pop-os/popsicle) — GTK3 & CLI utility for flashing multiple USB devices in parallel
* [pop-os/system76-power](https://github.com/pop-os/system76-power/) — Linux power management daemon (DBus-interface) with CLI tool.
* [Ralvke/logram](https://github.com/Ralvke/logram) — Push log files' updates to Telegram [
](https://travis-ci.org/Ralvke/logram)
* [redox-os/ion](https://github.com/redox-os/ion) — Next-generation system shell [
](https://travis-ci.org/redox-os/ion)
* [sharkdp/bat](https://github.com/sharkdp/bat) — A cat(1) clone with wings. [
](https://travis-ci.org/sharkdp/bat)
* [sharkdp/fd](https://github.com/sharkdp/fd) — A simple, fast and user-friendly alternative to find. [](https://travis-ci.org/sharkdp/fd)
* [sitkevij/hex](https://github.com/sitkevij/hex) — A colorized hexdump terminal utility. [
](https://travis-ci.org/sitkevij/hex)
* [supercilex/fuc](https://github.com/supercilex/fuc) - Fast `cp` and `rm` commands
* [m4b/bingrep](https://github.com/m4b/bingrep) — Greps through binaries from various OSs and architectures, and colors them. [
](https://travis-ci.org/m4b/bingrep)
* [uutils/coreutils](https://github.com/uutils/coreutils) — A cross-platform Rust rewrite of the GNU coreutils [
](https://travis-ci.org/uutils/coreutils)
* [watchexec](https://github.com/watchexec/watchexec) — Executes commands in response to file modifications [
](https://travis-ci.org/watchexec/watchexec)
* [XAMPPRocky/tokei](https://github.com/XAMPPRocky/tokei) — counts the lines of code [
](https://travis-ci.org/XAMPPRocky/tokei)
* [nushell/nushell](https://github.com/nushell/nushell) — A multiplatform, data oriented shell and a scripting language
* [gblach/reflicate](https://github.com/gblach/reflicate) — Deduplicate data by creating reflinks between identical files. [](https://github.com/gblach/reflicate/actions/workflows/rust.yml)
* [gblach/imge](https://github.com/gblach/imge) — Write disk images to physical drive or vice versa with on-the-fly compression/decompression. [](https://github.com/gblach/imge/actions/workflows/rust-check.yml)
### Text editors
* [gchp/iota](https://github.com/gchp/iota) — A simple text editor [
](https://travis-ci.org/gchp/iota)
* [mathall/rim](https://github.com/mathall/rim) — Vim-like text editor written in Rust [
](https://travis-ci.org/mathall/rim)
* [Remacs](https://github.com/remacs/remacs) — A community-driven port of Emacs to Rust. [
](https://travis-ci.org/remacs/remacs)
* [xi-editor](https://github.com/xi-editor/xi-editor) — A modern editor with a backend written in Rust.
* [xray](https://github.com/atom-archive/xray) — An experimental next-generation Electron-based text editor. [
](https://travis-ci.org/atom/xray)
### Text processing
* [TankerHQ/ruplacer](https://github.com/TankerHQ/ruplacer) — Find and replace text in source files [
](https://travis-ci.org/TankerHQ/ruplacer)
* [ripgrep](https://crates.io/crates/ripgrep) — combines the usability of The Silver Searcher with the raw speed of grep [
](https://travis-ci.org/BurntSushi/ripgrep)
* [sd](https://crates.io/crates/sd) — Intuitive find & replace CLI [
](https://travis-ci.org/chmln/sd)
* [lavifb/todo_r](https://github.com/lavifb/todo_r) — Find all your TODO notes with one command! [
](https://travis-ci.org/lavifb/todo_r)
* [whitfin/runiq](https://github.com/whitfin/runiq) — an efficient way to filter duplicate lines from unsorted input.
* [whitfin/bytelines](https://github.com/whitfin/bytelines) — Read input lines as byte slices for high efficiency.
* [vishaltelangre/ff](https://github.com/vishaltelangre/ff) — Find files (ff) by name! [
](https://travis-ci.org/vishaltelangre/ff)
* [xsv](https://crates.io/crates/xsv) — A fast CSV command line tool (slicing, indexing, selecting, searching, sampling, etc.) [
](https://travis-ci.org/BurntSushi/xsv)
### Utilities
* [brycx/checkpwn](https://github.com/brycx/checkpwn) — A Have I Been Pwned (HIBP) command-line utility tool that lets you easily check for compromised accounts and passwords.
* [evansmurithi/cloak](https://github.com/evansmurithi/cloak) — A Command Line OTP (One Time Password) Authenticator application. [
](https://travis-ci.com/evansmurithi/cloak) [
](https://ci.appveyor.com/project/evansmurithi/cloak)
* [arthrp/consoletimer](https://github.com/arthrp/consoleTimer) - Simple timer for your terminal. [
](https://travis-ci.org/arthrp/consoleTimer)
* [myfreeweb/freepass](https://github.com/myfreeweb/freepass) — The free password manager for power users. [
](https://travis-ci.org/myfreeweb/freepass)
* [arthrp/quick-skeleton](https://github.com/arthrp/quick-skeleton) — Project scaffolding tool, similar to Yeoman and Slush. [
](https://travis-ci.org/arthrp/quick-skeleton)
* [yaa110/rubigo](https://github.com/yaa110/rubigo) — Golang dependency tool and package manager, written in Rust [
](https://travis-ci.org/yaa110/rubigo)
* [whitfin/s3-concat](https://github.com/whitfin/s3-concat) — A command line tool to concatenate Amazon S3 files remotely using flexible patterns.
* [whitfin/s3-meta](https://github.com/whitfin/s3-meta) — A command line tool to gather metadata about your Amazon S3 buckets.
* [Tabiew](https://github.com/shshemi/tabiew) — A lightweight TUI app to view and query CSV files.
* [Tuckr](https://github.com/RaphGL/Tuckr) — A dotfile and symlink manager that requires no configuration, inspired by GNU Stow's approach.
* [amar-laksh/workstation](https://github.com/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!
* [aleshaleksey/AZDice](https://github.com/aleshaleksey/AZDice) — A dice roll success distribution generator for tabletop homebrewers. [
](https://travis-ci.org/aleshaleksey/AZDice)
* [fcsonline/tmux-thumbs](https://github.com/fcsonline/tmux-thumbs) — A lightning fast version of tmux-fingers written in Rust, copy/pasting tmux like vimium/vimperator.
* [repoch](https://github.com/lucawen/repoch) — Convert epoch to datetime and datetime to epoch [
](https://travis-ci.com/lucawen/repoch/)
* [yaa110/cb](https://github.com/yaa110/cb) — Command line interface to manage clipboard [](https://travis-ci.org/yaa110/cb)
### Video
* [yuvadm/slingr](https://github.com/yuvadm/slingr) — A simple CLI for streaming media files over a local network to UPnP media renderers [
](https://travis-ci.org/yuvadm/slingr)
### Virtualization
* [firecracker-microvm/firecracker](https://github.com/firecracker-microvm/firecracker) — A lightweight virtual machine for container workload [Firecracker Microvm](https://firecracker-microvm.github.io/)
* [oracle/railcar](https://github.com/oracle/railcar) — Docker-like container OCI runtime implementation in Rust [](https://app.wercker.com/applications/59696a02ee70670100155ae2 )
* [tailhook/vagga](https://github.com/tailhook/vagga) — A containerization tool without daemons [
](https://travis-ci.org/tailhook/vagga)
### Window managers
* [way-cooler/way-cooler](https://github.com/way-cooler/way-cooler) — A customizable Wayland compositor (window manager) [
](https://travis-ci.org/way-cooler/way-cooler)
### Web
* [Plume-org/Plume](https://github.com/Plume-org/Plume) — ActivityPub federating blogging application [
](https://travis-ci.org/Plume-org/Plume)
* [rustlang-cn/ruster](https://github.com/rustlang-cn/ruster) — online community in rust for rust community [
](https://travis-ci.org/rustlang-cn/ruster)
### Web Servers
* [Man In The Middle Proxy](https://github.com/emanuele-em/man-in-the-middle-proxy) — A MITM Proxy Written in Rust 🦀! Toolkit for HTTP/1, HTTP/2, and WebSockets with SSL/TLS Capabilities.
* [Poem Framework](https://github.com/poem-web/poem) — A full-featured and easy-to-use web framework with the Rust programming language.
* [thecoshman/http](https://github.com/thecoshman/http) — Host These Things Please — A basic http server for hosting a folder fast and simply [
](https://travis-ci.org/thecoshman/http)
* [svenstaro/miniserve](https://github.com/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 [
](https://travis-ci.org/svenstaro/miniserve)
* [TheWaWaR/simple-http-server](https://github.com/TheWaWaR/simple-http-server) — simple static http server
* [wyhaya/see](https://github.com/wyhaya/see) — Static file server [](https://travis-ci.org/wyhaya/see)
* [Mini RPS](https://github.com/marcodpt/minirps) - Mini reverse proxy server, HTTPS, CORS, static file hosting and template engine (minijinja)
## Development tools
* [ATAC](https://github.com/Julien-cpsn/ATAC) — ATAC is Arguably a Terminal API Client. It is based on well-known clients such as Postman, Insomnia, or even Bruno, but inside your terminal without any specific graphical environment needed.
* [clippy](https://crates.io/crates/clippy) — Rust lints [
](https://travis-ci.org/rust-lang/rust-clippy)
* [clog-tool/clog-cli](https://github.com/clog-tool/clog-cli) — generates a changelog from git metadata ([conventional changelog](https://blog.thoughtram.io/announcements/tools/2014/09/18/announcing-clog-a-conventional-changelog-generator-for-the-rest-of-us.html)) [
](https://travis-ci.org/clog-tool/clog-cli)
* [create-rust-app](https://crates.io/crates/create-rust-app) — Set up a modern rust+react web app by running one command. [
](https://crates.io/crates/create-rust-app)
* [dan-t/rusty-tags](https://github.com/dan-t/rusty-tags) — create ctags/etags for a cargo project and all of its dependencies [
](https://travis-ci.org/dan-t/rusty-tags)
* [frewsxcv/crate-deps](https://github.com/frewsxcv/crate-deps) — generates images of dependency graphs for crates hosted on crates.io
* [git-journal](https://github.com/saschagrunert/git-journal/) — The Git Commit Message and Changelog Generation Framework [
](https://travis-ci.org/saschagrunert/git-journal)
* [rust-lang-nursery/rustfix](https://github.com/rust-lang-nursery/rustfix) — automatically applies the suggestions made by rustc [
](https://travis-ci.org/killercup/rustfix)
* [just](https://github.com/casey/just) — A handy command runner for project-specific tasks [
](https://travis-ci.org/casey/just)
* [Module Linker](https://github.com/fiatjaf/module-linker) — Extension that adds `` links to references in `mod`, `use` and `extern crate` statements at GitHub.
* [Ockam](https://github.com/ockam-network/ockam) — A suite of tools, programming libraries and infrastructure that make it easy to build devices that communicate securely, privately and trustfully with cloud services and other devices. [
](https://github.com/ockam-network/ockam/actions?query=workflow%3A%22Continuous+Integration%22)
* [ptags](https://github.com/dalance/ptags) — A parallel universal-ctags wrapper for git repository [](https://travis-ci.org/dalance/ptags)
* [Racer](https://github.com/racer-rust/racer) — code completion for Rust [
](https://travis-ci.org/phildawes/racer)
* [rustfmt](https://github.com/rust-lang/rustfmt) — A Rust code formatter [
](https://travis-ci.org/rust-lang/rustfmt)
* [Rustup](https://github.com/rust-lang/rustup.rs) — the Rust toolchain installer [
](https://travis-ci.org/rust-lang/rustup.rs)
* [Rust Language Server](https://github.com/rust-lang/rls) — A server that runs in the background, providing IDEs, editors, and other tools with information about Rust programs
* [Rust Regex Playground](https://2fd.github.io/rust-regex-playground/#method=find®ex=%5Cw%2B&text=abc) — Web tool to evaluate rust regular expressions
* [artifact](https://github.com/vitiral/artifact) — the design doc tool made for developers [](https://travis-ci.org/vitiral/artifact)
* [semantic-rs](https://github.com/semantic-rs/semantic-rs) — automatic crate publishing [
](https://travis-ci.org/semantic-rs/semantic-rs)
* [fw](https://github.com/brocode/fw) — workspace productivity booster [
](https://travis-ci.org/brocode/fw)
* [tinyrick](https://github.com/mcandre/tinyrick) a basic task dependency tool emphasizing Rust functions over raw shell commands.
* [frolic](https://github.com/FrolicOrg/Frolic) — An API layer to build customer facing dashboards 10x faster
### Build system
* [Cargo](https://crates.io/) — the Rust package manager
* [cargo-benchcmp](https://crates.io/crates/cargo-benchcmp) — A utility to compare Rust micro-benchmarks [
](https://travis-ci.org/BurntSushi/cargo-benchcmp)
* [cargo-bitbake](https://crates.io/crates/cargo-bitbake) — A cargo extension that can generate BitBake recipes utilizing the classes from meta-rust [
](https://travis-ci.org/cardoe/cargo-bitbake)
* [cargo-cache](https://crates.io/crates/cargo-cache) — inspect/manage/clean your cargo cache (`~/.cargo/`/`${CARGO_HOME}`), print sizes etc [
](https://travis-ci.org/matthiaskrgr/cargo-cache)
* [cargo-check](https://crates.io/crates/cargo-check) — A wrapper around `cargo rustc -- -Zno-trans` which can be helpful for running a faster compile if you only need correctness checks [
](https://travis-ci.org/rsolomo/cargo-check)
* [cargo-count](https://crates.io/crates/cargo-count) — lists source code counts and details about cargo projects, including unsafe statistics [
](https://travis-ci.org/kbknapp/cargo-count)
* [cargo-deb](https://crates.io/crates/cargo-deb) — Generates binary Debian packages [
](https://travis-ci.org/mmstick/cargo-deb)
* [cargo-deps](https://crates.io/crates/cargo-deps) — build dependency graphs of Rust projects [
](https://travis-ci.org/m-cat/cargo-deps)
* [cargo-do](https://crates.io/crates/cargo-do) — run multiple cargo commands in a row [
](https://travis-ci.org/pwoolcoc/cargo-do)
* [cargo-ebuild](https://crates.io/crates/cargo-ebuild) — cargo extension that can generate ebuilds using the in-tree eclasses [
](https://travis-ci.org/cardoe/cargo-ebuild)
* [cargo-edit](https://crates.io/crates/cargo-edit) — allows you to add and list dependencies by reading/writing to your Cargo.toml file from the command line [
](https://travis-ci.org/killercup/cargo-edit)
* [cargo-find](https://crates.io/crates/cargo-find) deprecated — Find crates from command line [
](https://travis-ci.org/Ralvke/cargo-find)
* [cargo-graph](https://crates.io/crates/cargo-graph) — updated fork of `cargo-dot` with additional features. Unmaintained, see `cargo-deps` [
](https://travis-ci.org/kbknapp/cargo-graph)
* [cargo-info](https://crates.io/crates/cargo-info) — queries crates.io for crates details from command line [
](https://travis-ci.org/imp/cargo-info)
* [cargo-license](https://crates.io/crates/cargo-license) — A cargo subcommand to quickly view the licenses of all dependencies. [
](https://travis-ci.org/onur/cargo-license)
* [cargo-limit](https://crates.io/crates/cargo-limit) — Cargo with less noise: warnings are skipped until errors are fixed, Neovim integration, etc. [
](https://github.com/alopatindev/cargo-limit/actions)
* [cargo-make](https://crates.io/crates/cargo-make) — Rust task runner and build tool. [
](https://travis-ci.org/sagiegurari/cargo-make)
* [cargo-modules](https://crates.io/crates/cargo-modules) — A cargo plugin for showing a tree-like overview of a crate's modules. [
](https://travis-ci.org/regexident/cargo-modules)
* [cargo-multi](https://crates.io/crates/cargo-multi) — runs specified cargo command on multiple crates [
](https://travis-ci.org/imp/cargo-multi)
* [cargo-outdated](https://crates.io/crates/cargo-outdated) — displays when newer versions of Rust dependencies are available, or out of date [
](https://travis-ci.org/kbknapp/cargo-outdated)
* [cargo-release](https://crates.io/crates/cargo-release) — tool for releasing git-managed cargo project, build, tag, publish, doc and push [
](https://travis-ci.org/sunng87/cargo-release)
* [cargo-script](https://crates.io/crates/cargo-script) — lets people quickly and easily run Rust "scripts" which can make use of Cargo's package ecosystem [
](https://travis-ci.org/DanielKeep/cargo-script)
* [cargo-testify](https://crates.io/crates/cargo-testify) — watches files changes, runs tests and notifies about the result with friendly OS notification [
](https://travis-ci.org/greyblake/cargo-testify)
* [cargo-tree](https://github.com/sfackler/cargo-tree) – Cargo subcommand that visualizes a crate's dependency graph in a tree-like format [](https://circleci.com/gh/sfackler/cargo-tree)
* [cargo-update](https://crates.io/crates/cargo-update) — cargo subcommand for checking and applying updates to installed executables [
](https://travis-ci.org/nabijaczleweli/cargo-update)
* [cargo-watch](https://crates.io/crates/cargo-watch) — utility for cargo to compile projects when sources change [
](https://travis-ci.org/passcod/cargo-watch)
* [liuchong/cargo-x](https://github.com/liuchong/cargo-x) — A very simple third-party cargo subcommand to execute a custom command [
](https://travis-ci.org/liuchong/cargo-x)
* [dtolnay/cargo-expand](https://github.com/dtolnay/cargo-expand) — Expand macros in your source code
* CMake
* [Devolutions/CMakeRust](https://github.com/Devolutions/CMakeRust) — useful for integrating a Rust library into a CMake project
* [SiegeLord/RustCMake](https://github.com/SiegeLord/RustCMake) — an example project showing usage of CMake with Rust [
](https://travis-ci.org/SiegeLord/RustCMake)
* Github actions
* [icepuma/rust-action](https://github.com/icepuma/rust-action) — rust github action
* Webpack
* [Ralvke/rust-loader](https://github.com/Ralvke/rust-loader) — Webpack Rust loader (wasm)
### Debugging
* GDB
* [rust-gdb](https://github.com/rust-lang/rust/blob/master/src/etc/rust-gdb)
* [gdbgui](https://github.com/cs01/gdbgui) — Browser based frontend for gdb to debug C, C++, Rust, and go. [
](https://travis-ci.org/cs01/gdbgui)
* LLDB
* [lldb_batchmode.py](https://github.com/rust-lang/rust/blob/master/src/etc/lldb_batchmode.py) — allows to use LLDB in a way similar to GDB's batch mode.
* [CodeLLDB](https://marketplace.visualstudio.com/items?itemName=vadimcn.vscode-lldb) — A LLDB extension for [Visual Studio Code](https://code.visualstudio.com/).
* rr
* [rr](https://rr-project.org/) — rr is a lightweight tool for recording and replaying execution of applications
### Deployment
* Docker
* [emk/rust-musl-builder](https://github.com/emk/rust-musl-builder) — Docker images for compiling static Rust binaries using musl-libc and musl-gcc, with static versions of useful C libraries
* [kpcyrd/mini-docker-rust](https://github.com/kpcyrd/mini-docker-rust) — An example project for very small rust docker images [
](https://travis-ci.org/kpcyrd/mini-docker-rust)
* [liuchong/docker-rustup](https://github.com/liuchong/docker-rustup) — A multiple version (with musl tools) Rust Docker image
* [messense/rust-musl-cross](https://github.com/messense/rust-musl-cross) — Docker images for compiling static Rust binaries using musl-cross [
](https://travis-ci.org/messense/rust-musl-cross)
* [rust-lang-nursery/docker-rust](https://github.com/rust-lang/docker-rust) — the official Rust Docker image
* Google App Engine
* [DenisKolodin/rust-app-engine](https://github.com/DenisKolodin/rust-app-engine) — App Engine Rust boilerplate
* Heroku
* [emk/heroku-buildpack-rust](https://github.com/emk/heroku-buildpack-rust) — A buildpack for Rust applications on Heroku
### Embedded
[Rust Embedded](https://rust-embedded.org/)
* Cross compiling
* [japaric/rust-cross](https://github.com/japaric/rust-cross) — everything you need to know about cross compiling Rust programs [
](https://travis-ci.org/japaric/rust-cross)
* [japaric/xargo](https://github.com/japaric/xargo) — effortless cross compilation of Rust programs to custom bare-metal targets like ARM Cortex-M [
](https://travis-ci.org/japaric/xargo)
* Raspberry Pi
* [Ockam](https://github.com/ockam-network/ockam) — A suite of tools, programming libraries and infrastructure that make it easy to build devices that communicate securely, privately and trustfully with cloud services and other devices. [
](https://github.com/ockam-network/ockam/actions?query=workflow%3A%22Continuous+Integration%22)
* [Ogeon/rust-on-raspberry-pi](https://github.com/Ogeon/rust-on-raspberry-pi) — instructions for how to cross compile Rust projects for the Raspberry Pi .
* Arduino
* [avr-rust/ruduino](https://github.com/avr-rust/ruduino) ^`^t Reusable components for the Arduino Uno.
### FFI
See also [Foreign Function Interface](https://doc.rust-lang.org/book/first-edition/ffi.html), [The Rust FFI Omnibus](http://jakegoulding.com/rust-ffi-omnibus/) (a collection of examples of using code written in Rust from other languages) and [FFI examples written in Rust](https://github.com/alexcrichton/rust-ffi-examples).
* C
* [rlhunt/cbindgen](https://github.com/eqrion/cbindgen) — generates C header files from Rust source files. Used in Gecko for WebRender [
](https://travis-ci.org/eqrion/cbindgen)
* [Sean1708/rusty-cheddar](https://github.com/Sean1708/rusty-cheddar) — generates C header files from Rust source files [
](https://travis-ci.org/Sean1708/rusty-cheddar)
* C++
* [rust-lang/rust-bindgen](https://github.com/rust-lang/rust-bindgen) — A Rust bindings generator
* Erlang
* [rusterlium/rustler](https://github.com/rusterlium/rustler) — safe Rust bridge for creating Erlang NIF functions [
](https://travis-ci.org/rusterlium/rustler)
* Haskell
* [mgattozzi/curryrs](https://github.com/mgattozzi/curryrs) — Bridge the gap between Haskell and Rust
* [mgattozzi/haskellrs](https://github.com/mgattozzi/haskellrs) — Rust in Haskell FFI Example
* [mgattozzi/rushs](https://github.com/mgattozzi/rushs) — Haskell in Rust FFI Example
* Java
* [j4rs](https://crates.io/crates/j4rs) — use Java from Rust [
](https://travis-ci.org/astonbitecode/j4rs)
* [bennettanderson/rjni](https://github.com/benanders/rjni) — use Java from Rust [
](https://travis-ci.org/GravityScore/RustJNI)
* [drrb/java-rust-example](https://github.com/drrb/java-rust-example) — use Rust from Java [
](https://travis-ci.org/drrb/java-rust-example)
* [jni](https://crates.io/crates/jni) — use Rust from Java [
](https://travis-ci.org/jni-rs/jni-rs)
* [jni-sys](https://crates.io/crates/jni-sys) — Rust definitions corresponding to jni.h [
](https://travis-ci.org/sfackler/rust-jni-sys)
* [rucaja](https://crates.io/crates/rucaja) — use Java from Rust [
](https://travis-ci.org/kud1ing/rucaja)
* [rawrasaur/rust-jdbc](https://github.com/rawrasaur/rust-jdbc) — uses JDBC from Rust [
](https://travis-ci.org/rawrasaur/rust-jdbc)
* Lua
* [jcmoyer/rust-lua53](https://github.com/jcmoyer/rust-lua53) — Lua 5.3 bindings for Rust [
](https://travis-ci.org/jcmoyer/rust-lua53)
* [kballard/rust-lua](https://github.com/lilyball/rust-lua) — Safe Rust bindings to Lua 5.1 [
](https://travis-ci.org/lilyball/rust-lua)
* [tickbh/td_rlua](https://github.com/tickbh/td_rlua) — Zero-cost high-level lua 5.3 wrapper for Rust [
](https://travis-ci.org/tickbh/td_rlua)
* [tomaka/hlua](https://github.com/tomaka/hlua) — Rust library to interface with Lua [
](https://travis-ci.org/tomaka/hlua)
* mruby
* [anima-engine/mrusty](https://github.com/anima-engine/mrusty) — mruby safe bindings for Rust [
](https://travis-ci.org/anima-engine/mrusty)
* Node.js
* [neon-bindings/neon](https://github.com/neon-bindings/neon) — use Rust from Node.js [
](https://travis-ci.org/neon-bindings/neon)
* Objective-C
* [SSheldon/rust-objc](https://github.com/SSheldon/rust-objc) — Objective-C Runtime bindings and wrapper for Rust
* Perl
* [vickenty/mi-rust](https://github.com/vickenty/mi-rust) — Adds support to M::I for building modules with Cargo
* [vickenty/perl-xs](https://github.com/vickenty/perl-xs) — Create Perl XS modules using Rust [
](https://travis-ci.org/vickenty/perl-xs)
* Python
* [getsentry/milksnake](https://github.com/getsentry/milksnake) — extension for python setuptools that allows you to distribute dynamic linked libraries in Python wheels in the most portable way imaginable.
* [dgrunwald/rust-cpython](https://github.com/dgrunwald/rust-cpython) — Python bindings [
](https://travis-ci.org/dgrunwald/rust-cpython)
* [PyO3/PyO3](https://github.com/PyO3/PyO3) — Rust bindings for the Python interpreter [
](https://travis-ci.org/PyO3/pyo3)
* R
* [rustr/rustr](https://github.com/rustr/rustr) — use Rust from R, and use R in Rust [
](https://travis-ci.org/rustr/rustr)
* Ruby
* [d-unseductable/ruru](https://github.com/d-unseductable/ruru) — native Ruby extensions written in Rust [
](https://travis-ci.org/d-unseductable/ruru)
* [danielpclark/rutie](https://github.com/danielpclark/rutie) — native Ruby extensions written in Rust and vice versa [](https://travis-ci.org/danielpclark/rutie)
* [tildeio/helix](https://github.com/tildeio/helix) — write Ruby classes in Rust [
](https://travis-ci.org/tildeio/helix)
* Web Assembly
* [rustwasm/wasm-pack](https://github.com/rustwasm/wasm-pack) — :package: :sparkles: pack up the wasm and publish it to npm! [
](https://travis-ci.org/rustwasm/wasm-packn)
* [rustwasm/wasm-bindgen](https://github.com/rustwasm/wasm-bindgen) — A project for facilitating high-level interactions between wasm modules and JS. [
](https://travis-ci.org/rustwasm/wasm-bindgen)
### IDEs
See also [Are we (I)DE yet?](https://areweideyet.com/) and [Rust Tools](https://www.rust-lang.org/tools).
* [Atom](https://atom.io/)
* [zargony/atom-language-rust](https://github.com/zargony/atom-language-rust)
* [Eclipse](https://www.eclipse.org/)
* [Eclipse Corrosion](https://github.com/eclipse/corrosion)
* [RustDT](https://github.com/RustDT/RustDT) — [
](https://travis-ci.org/RustDT/RustDT)
* [Emacs](https://www.gnu.org/software/emacs/)
* [rust-mode](https://github.com/rust-lang/rust-mode) — Rust Major Mode
* [flycheck-rust](https://github.com/flycheck/flycheck-rust) — Rust support for [Flycheck](https://github.com/flycheck/flycheck)
* [emacs-racer](https://github.com/racer-rust/emacs-racer) — Autocompletion (see also [company](https://company-mode.github.io) and [auto-complete](https://github.com/auto-complete/auto-complete))
* [lsp-rust](https://github.com/emacs-lsp-legacy/lsp-rust) — Add rls support to [lsp-mode](https://github.com/emacs-lsp/lsp-mode)
* [gitpod.io](https://gitpod.io) — Online IDE with full Rust support based on Rust Language Server
* [gnome-builder](https://wiki.gnome.org/Apps/Builder) native support for rust and cargo since Version 3.22.2
* [Helix](https://helix-editor.com/) - A post-modern text editor
* [Kakoune](http://kakoune.org/)
* [ul/kak-lsp](https://github.com/ul/kak-lsp/) — [LSP](https://microsoft.github.io/language-server-protocol/) client. Implemented in Rust and supports rls out of the box.
* [NetBeans](https://netbeans.org/)
* [drrb/rust-netbeans](https://github.com/drrb/rust-netbeans)
* [IntelliJ](https://www.jetbrains.com/idea/)
* [intellij-rust/intellij-rust](https://github.com/intellij-rust/intellij-rust) — [
](https://travis-ci.org/intellij-rust/intellij-rust)
* [intellij-rust/intellij-toml](https://github.com/intellij-rust/intellij-toml) — basic Toml support
* [Ride](https://github.com/madeso/ride) — [
](https://travis-ci.org/madeso/ride)
* [SolidOak](https://github.com/oakes/SolidOak) — A simple IDE for Rust, based on GTK+ and [Neovim](https://github.com/neovim/neovim)
* [Sublime Text](https://www.sublimetext.com/)
* [rust-lang/rust-enhanced](https://github.com/rust-lang/rust-enhanced) — official Rust package
* [sublimehq/packages](https://github.com/sublimehq/Packages/tree/master/Rust) — native Sublime support (already installed)
* [Vim](https://vim.sourceforge.io/) — the ubiquitous text editor
* [rust.vim](https://github.com/rust-lang/rust.vim) — provides file detection, syntax highlighting, formatting, Syntastic integration, and more.
* [vim-cargo](https://github.com/timonv/vim-cargo) — command bindings to quickly run cargo stuff from vim.
* [vim-racer](https://github.com/racer-rust/vim-racer) — allows vim to use [Racer](https://github.com/racer-rust/racer) for Rust code completion and navigation.
* [autozimu/LanguageClient-neovim](https://github.com/autozimu/LanguageClient-neovim) — [LSP](https://microsoft.github.io/language-server-protocol/) client. Implemented in Rust and supports rls out of the box.
* Visual Studio
* [PistonDevelopers/VisualRust](https://github.com/PistonDevelopers/VisualRust) — A Visual Studio extension for Rust [
](https://travis-ci.org/PistonDevelopers/VisualRust)
* [dgriffen/rls-vs2017](https://github.com/dgriffen/rls-vs2017) — Rust support for Visual Studio 2017 Preview [
](https://ci.appveyor.com/project/dgriffen/rls-vs2017)
* [Visual Studio Code](https://code.visualstudio.com/)
* [rust-lang/rls-vscode](https://marketplace.visualstudio.com/items?itemName=rust-lang.rust) — Rust support for Visual Studio Code
* [CodeLLDB](https://marketplace.visualstudio.com/items?itemName=vadimcn.vscode-lldb) — A LLDB extension
* [crates](https://github.com/serayuzgur/crates) — crates is an extension for crates.io dependencies. [
](https://github.com/serayuzgur/crates) [
](https://travis-ci.org/serayuzgur/crates)
* [KalitaAlexey/vscode-rust](https://marketplace.visualstudio.com/items?itemName=kalitaalexey.vscode-rust) — A fork of RustyCode
### Pattern recognition
* [sfikas/rusteval](https://github.com/sfikas/rusteval) — A tool used to evaluate the output of retrieval algorithms [](https://travis-ci.org/sfikas/rusteval)
### Profiling
* [sharkdp/hyperfine](https://github.com/sharkdp/hyperfine) — A command-line benchmarking tool [](https://crates.io/crates/hyperfine) [](https://travis-ci.org/sharkdp/hyperfine)
* [performancecopilot/hornet](https://github.com/performancecopilot/hornet) — A Performance Co-Pilot memory-mapped values instrumentation library [](https://crates.io/crates/hornet) [
](https://travis-ci.org/performancecopilot/hornet)
* [nokia/memory-profiler](https://github.com/nokia/memory-profiler) — A memory profiler for Linux [](https://travis-ci.org/nokia/memory-profiler)
* [ellisonch/rust-stopwatch](https://github.com/ellisonch/rust-stopwatch) — A stopwatch library [
](https://travis-ci.org/ellisonch/rust-stopwatch)
* FlameGraphs
* [mrhooray/torch](https://github.com/mrhooray/torch) — generates FlameGraphs based on DWARF Debug Info
* [TyOverby/flame](https://github.com/TyOverby/flame) — [
](https://travis-ci.org/TyOverby/flame)
### Services
* [deps.rs](https://github.com/srijs/deps.rs) — Detect outdated or insecure dependencies
* [docs.rs](https://docs.rs) — Automatic documentation generation of crates
### Static analysis
[[assert](https://crates.io/keywords/assert), [static](https://crates.io/keywords/static)]
* [static_assertions](https://crates.io/crates/static_assertions) — Compile-time assertions to ensure that invariants are met [](https://travis-ci.org/nvzqz/static-assertions-rs/)
### Testing
[[testing](https://crates.io/keywords/testing)]
* [mockiato](https://crates.io/crates/mockiato) — A strict, yet friendly mocking library for Rust 2018 [
](https://travis-ci.com/myelin-ai/mockiato)
* [mutagen](https://crates.io/crates/mutagen) — A source-level mutation testing framework (nightly only) [
](https://travis-ci.org/llogiq/mutagen)
* [AlKass/polish](https://github.com/AlKass/polish) — Mini Testing/Test-Driven Framework [](https://travis-ci.org/AlKass/polish) [](https://crates.io/crates/polish)
* [httpmock](https://github.com/alexliesenfeld/httpmock) — HTTP mocking [](https://dev.azure.com/alexliesenfeld/httpmock/_build/latest?definitionId=2&branchName=master)
* [proptest](https://crates.io/crates/proptest) — property testing framework inspired by the [Hypothesis](https://hypothesis.works/) framework for Python [
](https://travis-ci.org/altsysrq/proptest)
* [quickcheck](https://crates.io/crates/quickcheck) — A Rust implementation of [QuickCheck](https://wiki.haskell.org/Introduction_to_QuickCheck1) [
](https://travis-ci.org/BurntSushi/quickcheck)
* [mockito](https://crates.io/crates/mockito) — HTTP mocking [
](https://travis-ci.org/lipanski/mockito)
* [speculate](https://crates.io/crates/speculate) — An RSpec inspired minimal testing framework for Rust
* [rust-fuzz/afl.rs](https://github.com/rust-fuzz/afl.rs) — A Rust fuzzer, using [AFL](http://lcamtuf.coredump.cx/afl/) [
](https://travis-ci.org/rust-fuzz/afl.rs)
* [tarpaulin](https://crates.io/crates/cargo-tarpaulin) — A code coverage tool designed for Rust [
](https://travis-ci.org/xd009642/tarpaulin)
* [trust](https://github.com/japaric/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
### Transpiling
* [immunant/c2rust](https://github.com/immunant/c2rust) — C to Rust translator and cross checker built atop Clang/LLVM. [](https://travis-ci.org/immunant/c2rust)
* [jameysharp/corrode](https://github.com/jameysharp/corrode) — A C to Rust translator written in Haskell.
* [tsync](https://crates.io/crates/tsync) — A utility to generate typescript types from rust code. [
](https://crates.io/crates/tsync)
## Libraries
### Artificial Intelligence
#### Genetic Algorithms
* [andschwa/rust-genetic-algorithm](https://github.com/andschwa/rust-genetic-algorithm) — A genetic algorithm for academic benchmark problems [
](https://travis-ci.org/andschwa/rust-genetic-algorithm)
* [thomasbratt/watchmaker](https://github.com/thomasbratt/watchmaker) — Genetic Algorithm library. Implement a single trait for your problem and call a single method. Supports progress reporting, configurable parameters. [](https://circleci.com/gh/thomasbratt/watchmaker/tree/main)
* [thomasbratt/watchmaker_vm](https://github.com/thomasbratt/watchmaker_vm) — A virtual machine for use with genetic algorithms. Any random sequence of bytes is a valid program. Simple orthogonal instruction format. Each instruction is a 64 bit value, including operands. [](https://circleci.com/gh/thomasbratt/watchmaker_vm/tree/main)
* [Martin1887/oxigen](https://github.com/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](https://github.com/innoave/genevo) — Execute genetic algorithm (GA) simulations in a customizable and extensible way.
* [willi-kappler/darwin-rs](https://github.com/willi-kappler/darwin-rs) — This library allows you to write evolutionary algorithms (EA) using the Rust programming language. Written by Willi Kappler, License: MIT — Version 0.4 (2017.06.26).
* [m-decoster/RsGenetic](https://github.com/m-decoster/RsGenetic) — Genetic Algorithm library in Rust. In maintenance mode.
* [mneumann/evo-rs](https://github.com/mneumann/evo-rs) — Evolutionary Algorithm Library for Rust. Without changes for 3 years.
* [yurytsoy/revonet](https://github.com/yurytsoy/revonet) — Rust implementation of real-coded GA for solving optimization problems and training of neural networks.
#### Machine learning
[[machine learning](https://crates.io/keywords/machine-learning)]
See also [About Rust’s Machine Learning Community](https://medium.com/@autumn_eng/about-rust-s-machine-learning-community-4cda5ec8a790#.hvkp56j3f).
* [AtheMathmo/rusty-machine](https://github.com/AtheMathmo/rusty-machine) — Machine learning library for Rust [](https://travis-ci.org/AtheMathmo/rusty-machine)
* [avinashshenoy97/RusticSOM](https://github.com/avinashshenoy97/RusticSOM) — Rust library for Self Organising Maps (SOM). [](https://travis-ci.org/avinashshenoy97/RusticSOM)
* [autumnai/leaf](https://github.com/autumnai/leaf) — Open Machine Intelligence framework. [](https://travis-ci.org/autumnai/leaf). Abandoned project. The most updated fork is [spearow/juice]( https://github.com/spearow/juice).
* [tensorflow/rust](https://github.com/tensorflow/rust) — Rust language bindings for TensorFlow. [](https://travis-ci.org/tensorflow/rust)
* [maciejkula/rustlearn](https://github.com/maciejkula/rustlearn) — Machine learning crate for Rust. [](https://circleci.com/gh/maciejkula/rustlearn)
* [LaurentMazare/tch-rs](https://github.com/LaurentMazare/tch-rs) — Rust language bindings for PyTorch. [](https://travis-ci.org/LaurentMazare/tch-rs)
### Astronomy
[[astronomy](https://crates.io/keywords/astronomy)]
* [saurvs/astro-rust](https://github.com/saurvs/astro-rust) — astronomy for Rust [
](https://travis-ci.org/saurvs/astro-rust)
* [fitsio](https://crates.io/crates/fitsio) — fits interface library wrapping cfitsio [
](https://travis-ci.org/mindriot101/rust-fitsio)
* [flosse/rust-sun](https://github.com/flosse/rust-sun) — A rust port of the JS library suncalc [
](https://travis-ci.org/flosse/rust-sun)
### Asynchronous
* [Async-graphql](https://github.com/async-graphql/async-graphql) — `Async-graphql` is a high-performance server-side library that supports all GraphQL specifications.
* [zonyitoo/coio-rs](https://github.com/zonyitoo/coio-rs) — A coroutine I/O library with a working-stealing scheduler [
](https://travis-ci.org/zonyitoo/coio-rs)
* [dpc/mioco](https://github.com/dpc/mioco) — Scalable, coroutine-based, asynchronous IO handling library [
](https://travis-ci.org/dpc/mioco)
* [TeaEntityLab/fpRust](https://github.com/TeaEntityLab/fpRust) — Monad/MonadIO, Handler, Coroutine/doNotation, Functional Programming features for Rust [
](https://travis-ci.org/TeaEntityLab/fpRust)
* [rust-lang-nursery/futures-rs](https://github.com/rust-lang-nursery/futures-rs) — Zero-cost futures in Rust [
](https://travis-ci.org/rust-lang-nursery/futures-rs)
* [mio](https://github.com/tokio-rs/mio) — MIO is a lightweight IO library for Rust with a focus on adding as little overhead as possible over the OS abstractions [
](https://travis-ci.org/tokio-rs/mio)
* [Xudong-Huang/may](https://github.com/Xudong-Huang/may) — rust stackful coroutine library [
](https://travis-ci.org/Xudong-Huang/may)
* [rustasync/runtime](https://github.com/rustasync/runtime) - A runtime agnostic API designed to make async feel like its part of stdlib [](https://crates.io/crates/runtime) [](https://dev.azure.com/yoshuawuyts/rustasync/_build?definitionId=2)
### Audio
[[audio](https://crates.io/keywords/audio)]
* [GuillaumeGomez/rust-fmod](https://github.com/GuillaumeGomez/rust-fmod) — [FMOD](https://www.fmod.com) bindings [](https://travis-ci.org/GuillaumeGomez/rust-fmod)
* [jhasse/ears](https://github.com/jhasse/ears) — A simple library to play Sounds and Musics, on top of OpenAL and libsndfile [
](https://travis-ci.org/jhasse/ears)
* [jpernst/alto](https://github.com/jpernst/alto) — OpenAL 1.1 bindings [
](https://travis-ci.org/jpernst/alto)
* [musitdev/portmidi-rs](https://github.com/musitdev/portmidi-rs) — [PortMidi](http://portmedia.sourceforge.net/portmidi/) bindings [
](https://travis-ci.org/musitdev/portmidi-rs)
* [hound](https://crates.io/crates/hound) — A WAV encoding and decoding library [
](https://travis-ci.org/ruuda/hound)
* [tomaka/rodio](https://github.com/tomaka/rodio) — A Rust audio playback library [](https://travis-ci.org/tomaka/rodio)
* [RustAudio](https://github.com/RustAudio)
* [RustAudio/rust-portaudio](https://github.com/RustAudio/rust-portaudio) — [PortAudio](http://www.portaudio.com/) bindings [
](https://travis-ci.org/RustAudio/rust-portaudio)
### Authentication
* [Keats/jsonwebtoken](https://github.com/Keats/jsonwebtoken) — [JSON Web Token](https://en.wikipedia.org/wiki/JSON_Web_Token) lib in rust [](https://travis-ci.org/Keats/jsonwebtoken)
* [Ockam](https://github.com/ockam-network/ockam) — A suite of tools, programming libraries and infrastructure that make it easy to build devices that communicate securely, privately and trustfully with cloud services and other devices. [
](https://github.com/ockam-network/ockam/actions?query=workflow%3A%22Continuous+Integration%22)
### Automotive
* [canparse](https://crates.io/crates/canparse) — A CAN signal and definition parser [
](https://travis-ci.org/jmagnuson/canparse)
* [j2534](https://crates.io/crates/j2534) — J2534 PassThru bindings
* [JulianSchmid/dlt_parse](https://github.com/JulianSchmid/dlt-parse-rs) — Rust DLT (Diagnostic Log and Trace) packet parser [
](https://travis-ci.org/JulianSchmid/dlt-parse-rs)
* [JulianSchmid/someip_parse](https://github.com/JulianSchmid/someip-parse-rs) [[someip_parse](https://crates.io/crates/someip_parse)] — A library for parsing the SOME/IP network protocol (without payload interpretation) [
](https://travis-ci.org/JulianSchmid/someip-parse-rs)
* [LibreTuner/tuneutils](https://github.com/LibreTuner/tuneutils) [[tuneutils](https://crates.io/crates/tuneutils)] — Utilities for interfacing with, diagnosing, and tuning car
* [marcelbuesing/can-dbc](https://github.com/marcelbuesing/can-dbc) [[can-dbc](https://crates.io/crates/can-dbc)] — A parser for the DBC format [
](https://travis-ci.org/marcelbuesing/can-dbc)
* [marcelbuesing/tokio-socketcan-bcm](https://github.com/marcelbuesing/tokio-socketcan-bcm) [[tokio-socketcan-bcm](https://crates.io/crates/tokio-socketcan-bcm)] — Linux SocketCAN BCM support for tokio [
](https://travis-ci.org/marcelbuesing/tokio-socketcan-bcm)
* [mbr/socketcan](https://github.com/mbr/socketcan-rs) [[socketcan](https://crates.io/crates/socketcan)] — Linux SocketCAN library [
](https://travis-ci.org/mbr/socketcan-rs)
* [oefd/tokio-socketcan](https://github.com/oefd/tokio-socketcan) [[tokio-socketcan]](https://crates.io/crates/tokio-socketcan)] — Linux SocketCAN support for tokio based on the socketcan crate
* [Sensirion/lin-bus](https://github.com/Sensirion/lin-bus-rs) [[lin-bus](https://crates.io/crates/lin-bus)] — LIN bus driver traits and protocol implementation [
](https://circleci.com/gh/Sensirion/lin-bus-rs)
### Bioinformatics
* [Rust-Bio](https://github.com/rust-bio) — bioinformatics libraries in Rust.
### Caching
* [jaysonsantos/bmemcached-rs](https://github.com/jaysonsantos/bmemcached-rs) — Memcached library written in pure rust [
](https://travis-ci.org/jaysonsantos/bmemcached-rs)
* [jaemk/cached](https://github.com/jaemk/cached) — Simple function caching/memoization
* [aisk/rust-memcache](https://github.com/aisk/rust-memcache) — Memcached client library [
](https://travis-ci.org/aisk/rust-memcache)
### Concurrency
* [aymanmadkour/glock](https://github.com/aymanmadkour/glock) – Granular locking crate for Rust. [
](https://travis-ci.org/aymanmadkour/glock)
* [crossbeam-rs/crossbeam](https://github.com/crossbeam-rs/crossbeam) – Support for parallelism and low-level concurrency in Rust [
](https://travis-ci.org/crossbeam-rs/crossbeam)
* [orium/archery](https://github.com/orium/archery) [[archery](https://crates.io/crates/archery)] — Library to abstract from `Rc`/`Arc` pointer types. [
](https://travis-ci.org/orium/archery)
* [pop-os/bus-writer](https://github.com/pop-os/bus-writer) — Generic single-reader, multi-writer
* [Rayon](https://github.com/rayon-rs/rayon) – A data parallelism library for Rust [
](https://travis-ci.org/rayon-rs/rayon)
* [rustcc/coroutine-rs](https://github.com/rustcc/coroutine-rs) – Coroutine Library in Rust [
](https://travis-ci.org/rustcc/coroutine-rs)
* [zonyitoo/coio-rs](https://github.com/zonyitoo/coio-rs) – Coroutine I/O for Rust [
](https://travis-ci.org/zonyitoo/coio-rs)
### Cloud
* AWS [[aws](https://crates.io/keywords/aws)]
* [rusoto/rusoto](https://github.com/rusoto/rusoto) — [
](https://travis-ci.org/rusoto/rusoto)
### Command-line
* Argument parsing
* [clap-rs](https://github.com/clap-rs/clap) [[clap](https://crates.io/crates/clap)] — A simple to use, full featured command-line argument parser [
](https://travis-ci.org/clap-rs/clap-rs)
* [docopt/docopt.rs](https://github.com/docopt/docopt.rs) [[docopt](https://crates.io/crates/docopt)] — A Rust implementation of [DocOpt](http://docopt.org) [
](https://travis-ci.org/docopt/docopt.rs)
* [TeXitoi/structopt](https://github.com/TeXitoi/structopt) [[structopt](https://crates.io/crates/structopt)] — parse command line argument by defining a struct [
](https://travis-ci.org/TeXitoi/structopt)
* [killercup/quicli](https://github.com/killercup/quicli) [[quicli](https://crates.io/crates/quicli)] — quickly build cool CLI apps in Rust [
](https://travis-ci.org/killercup/quicli)
* Human-centered design
* [rust-cli/human-panic](https://github.com/rust-cli/human-panic) [[human-panic](https://crates.io/crates/human-panic)] — panic messages for humans [
](https://travis-ci.org/rust-cli/human-panic)
* Line editor
* [srijs/rust-copperline](https://github.com/srijs/rust-copperline) [[copperline](https://crates.io/crates/copperline)] — pure-Rust command line editing library
* [MovingtoMars/liner](https://github.com/MovingtoMars/liner) [[liner](https://crates.io/crates/liner)] — A library offering readline-like functionality [
](https://travis-ci.org/MovingtoMars/liner)
* [murarth/linefeed](https://github.com/murarth/linefeed) [[linefeed](https://crates.io/crates/linefeed)] — Configurable, extensible, interactive line reader [
](https://travis-ci.org/murarth/linefeed)
* [kkawakam/rustyline](https://github.com/kkawakam/rustyline) [[rustyline](https://crates.io/crates/rustyline)] — readline implementation in Rust [
](https://travis-ci.org/kkawakam/rustyline)
* Pipeline
* [imp/pager-rs](https://gitlab.com/imp/pager-rs) [[pager](https://crates.io/crates/pager)] — pipe your output through an external pager [
](https://gitlab.com/imp/pager-rs/pipelines)
* [hniksic/rust-subprocess](https://github.com/hniksic/rust-subprocess) [[subprocess](https://crates.io/crates/subprocess)] — facilities for interaction with external pipelines [
](https://travis-ci.org/hniksic/rust-subprocess)
* [oconnor663/duct.rs](https://github.com/oconnor663/duct.rs) [[duct](https://crates.io/crates/duct)] — A builder for subprocess pipelines and IO redirection [
](https://travis-ci.org/oconnor663/duct.rs)
* [philippkeller/rexpect](https://github.com/philippkeller/rexpect) [[rexpect](https://crates.io/crates/rexpect)] — automate interactive applications such as ssh, ftp, passwd, etc [
](https://travis-ci.org/philippkeller/rexpect)
* Progress
* [mitsuhiko/indicatif](https://github.com/mitsuhiko/indicatif) [[indicatif](https://crates.io/crates/indicatif)] — indicate progress to users
* [a8m/pb](https://github.com/a8m/pb) [[pbr](https://crates.io/crates/pbr)] — console progress bar for Rust
* [FGRibreau/spinners](https://github.com/FGRibreau/spinners) [[spinners](https://crates.io/crates/spinners)] — 60+ elegant terminal spinners
* Prompt
* [hashmismatch/terminal_cli.rs](https://github.com/hashmismatch/terminal_cli.rs) [[terminal_cli](https://crates.io/crates/terminal_cli)] — build an interactive command prompt [
](https://travis-ci.org/hashmismatch/terminal_cli.rs)
* Style
* [ogham/rust-ansi-term](https://github.com/ogham/rust-ansi-term) [[ansi_term](https://crates.io/crates/ansi_term)] — control colours and formatting on ANSI terminals [
](https://travis-ci.org/ogham/rust-ansi-term)
* [LukasKalbertodt/term-painter](https://github.com/LukasKalbertodt/term-painter) [[term-painter](https://crates.io/crates/term-painter)] — cross-platform styled terminal output [
](https://travis-ci.org/LukasKalbertodt/term-painter)
* [vitiral/termstyle](https://github.com/vitiral/termstyle) [[termstyle](https://docs.rs/termstyle/0.1.2/termstyle/)] — build (and test) formatted and styled command line applications
* [SergioBenitez/yansi](https://github.com/SergioBenitez/yansi) [[yansi](https://crates.io/crates/yansi)] — A dead simple ANSI terminal color painting library
* TUI
* [TimonPost/crossterm](https://github.com/TimonPost/crossterm) [[crossterm](https://crates.io/crates/crossterm)] — crossplatform terminal library
* [gyscos/Cursive](https://github.com/gyscos/Cursive) [[cursive](https://crates.io/crates/cursive)] — build rich TUI applications [
](https://travis-ci.org/gyscos/Cursive)
* [ogham/rust-term-grid](https://github.com/ogham/rust-term-grid) [[term_grid](https://crates.io/crates/term_grid)] — Rust library for putting things in a grid [
](https://travis-ci.org/ogham/rust-term-grid)
* [ticki/termion](https://github.com/redox-os/termion) [[termion](https://crates.io/crates/termion)] — bindless library for controlling terminals/TTY [
](https://travis-ci.org/ticki/termion)
* [fdehau/tui-rs](https://github.com/fdehau/tui-rs) [[tui](https://crates.io/crates/tui)] — A TUI library inspired by [blessed-contrib](https://github.com/yaronn/blessed-contrib) and [termui](https://github.com/gizak/termui) [
](https://travis-ci.org/fdehau/tui-rs)
* BearLibTerminal
* [cfyzium/bearlibterminal](https://github.com/nabijaczleweli/BearLibTerminal.rs) [[bear-lib-terminal](https://crates.io/crates/bear-lib-terminal)] — [BearLibTerminal](https://bitbucket.org/cfyzium/bearlibterminal) bindings [
](https://travis-ci.org/nabijaczleweli/BearLibTerminal.rs)
* ncurses
* [jeaye/ncurses-rs](https://github.com/jeaye/ncurses-rs) [[ncurses](https://crates.io/crates/ncurses)] — [ncurses](https://www.gnu.org/software/ncurses/) bindings [
](https://travis-ci.org/jeaye/ncurses-rs)
* [ihalila/pancurses](https://github.com/ihalila/pancurses) [[pancurses](https://crates.io/crates/pancurses)] — curses library, supports linux and windows [
](https://travis-ci.org/ihalila/pancurses)
* Termbox
* [gchp/rustbox](https://github.com/gchp/rustbox) [[rustbox](https://crates.io/crates/rustbox)] — bindings to [Termbox](https://github.com/nsf/termbox) [
](https://travis-ci.org/gchp/rustbox)
### Compression
* [Brotli](https://opensource.googleblog.com/2015/09/introducing-brotli-new-compression.html)
* [ende76/brotli-rs](https://github.com/ende76/brotli-rs) — implementation of Brotli compression
* [dropbox/rust-brotli](https://github.com/dropbox/rust-brotli) — Brotli decompressor in Rust that optionally avoids the stdlib
* bzip2
* [alexcrichton/bzip2-rs](https://github.com/alexcrichton/bzip2-rs) — [libbz2](http://www.bzip.org) bindings [
](https://travis-ci.org/alexcrichton/bzip2-rs)
* gzip
* [carols10cents/zopfli](https://github.com/carols10cents/zopfli) — implementation of the [Zopfli](https://github.com/google/zopfli) compression algorithm for higher quality deflate or zlib compression
* miniz
* [alexcrichton/flate2-rs](https://github.com/alexcrichton/flate2-rs) — [miniz](https://code.google.com/archive/p/miniz) bindings [
](https://travis-ci.org/alexcrichton/flate2-rs)
* snappy
* [JeffBelgum/rust-snappy](https://github.com/JeffBelgum/rust-snappy) — [snappy](https://github.com/google/snappy) bindings [
](https://travis-ci.org/JeffBelgum/rust-snappy)
* tar
* [alexcrichton/tar-rs](https://github.com/alexcrichton/tar-rs) — tar archive reading/writing in Rust [
](https://travis-ci.org/alexcrichton/tar-rs)
* zip
* [mvdnes/zip-rs](https://github.com/mvdnes/zip-rs) — read and write ZIP archives [](https://travis-ci.org/mvdnes/zip-rs)
### Computation
* [argmin-rs/argmin](https://github.com/argmin-rs/argmin) [[argmin](https://crates.io/crates/argmin)] — A pure Rust optimization library [
](https://travis-ci.org/argmin-rs/argmin)
* [BLAS](https://en.wikipedia.org/wiki/Basic_Linear_Algebra_Subprograms) [[blas](https://crates.io/keywords/blas)]
* [mikkyang/rust-blas](https://github.com/mikkyang/rust-blas) — BLAS bindings
* [stainless-steel/blas](https://github.com/blas-lapack-rs/blas) — BLAS bindings [
](https://travis-ci.org/blas-lapack-rs/blas)
* [Conjugate Gradient](https://en.wikipedia.org/wiki/Limited-memory_BFGS)
* [noshu/cg-sys](https://github.com/noshu/cg-sys) — Rust binding of fortran CG+ subroutine
* [GMP](https://gmplib.org/)
* [fizyk20/rust-gmp](https://github.com/fizyk20/rust-gmp) — libgmp bindings [
](https://travis-ci.org/fizyk20/rust-gmp)
* [GSL](http://www.gnu.org/software/gsl/)
* [GuillaumeGomez/rust-GSL](https://github.com/GuillaumeGomez) — GSL bindings [
](https://travis-ci.org/GuillaumeGomez/rust-GSL)
* [LAPACK](https://en.wikipedia.org/wiki/LAPACK)
* [stainless-steel/lapack](https://github.com/blas-lapack-rs/lapack) — LAPACK bindings [
](https://travis-ci.org/blas-lapack-rs/lapack)
* [L-BFGS-B](https://en.wikipedia.org/wiki/Limited-memory_BFGS)
* [noshu/lbfgsb-sys](https://github.com/noshu/lbfgsb-sys) — Rust binding of fortran L-BFGS-B subroutine
* [rustsim/nalgebra](https://github.com/rustsim/nalgebra) — low-dimensional linear algebra library [
](https://travis-ci.org/rustsim/nalgebra)
* Parallel
* [arrayfire/arrayfire-rust](https://github.com/arrayfire/arrayfire-rust) — [Arrayfire](https://arrayfire.com/) bindings
* [autumnai/collenchyma](https://github.com/autumnai/collenchyma) — An extensible, pluggable, backend-agnostic framework for parallel, high-performance computations on CUDA, OpenCL and common host CPU. [
](https://travis-ci.org/autumnai/collenchyma)
* [luqmana/rust-opencl](https://github.com/luqmana/rust-opencl) — [OpenCL](https://www.khronos.org/opencl/) bindings [
](https://travis-ci.org/luqmana/rust-opencl)
* Scirust
* [indigits/scirust](https://github.com/indigits/scirust) — scientific computing library in Rust [](https://travis-ci.org/indigits/scirust)
* Statrs
* [boxtown/statrs](https://github.com/boxtown/statrs) — Robust statistical computation library in Rust [](https://travis-ci.org/boxtown/statrs)
* Rustimization [[rustimization](https://crates.io/crates/rustimization)]
* [noshu/rustimization](https://github.com/noshu/rustimization) — A rust optimization library which includes L-BFGS-B and Conjugate Gradient algorithm
* [calebwin/emu](https://github.com/calebwin/emu) — A language for GPGPU numerical computing from a Rust macro
### Configuration
* [mehcode/config-rs](https://github.com/mehcode/config-rs) [[config](https://crates.io/crates/config)] — Layered configuration system for Rust applications (with strong support for 12-factor applications). [
](https://travis-ci.org/mehcode/config-rs)
* [Kixunil/configure_me](https://github.com/Kixunil/configure_me) [[configure_me](https://crates.io/crates/configure_me)] — library for processing application configuration easily
### Cryptography
[[crypto](https://crates.io/keywords/crypto), [cryptography](https://crates.io/keywords/cryptography)]
* [briansmith/ring](https://github.com/briansmith/ring) — Safe, fast, small crypto using Rust and BoringSSL's cryptography primitives. [
](https://travis-ci.org/briansmith/ring)
* [briansmith/webpki](https://github.com/briansmith/webpki) — Web PKI TLS X.509 certificate validation in Rust. [
](https://travis-ci.org/briansmith/webpki)
* [brycx/orion](https://github.com/brycx/orion) — This library aims to provide easy and usable crypto. 'Usable' meaning exposing high-level