2742 Repositories
Rust algorithms-and-data-structures Libraries
A data-first Rust-native UI design toolkit.
Druid A data-first Rust-native UI toolkit. Druid is an experimental Rust-native UI toolkit. Its main goal is to offer a polished user experience. Ther
Generate PDF files with JavaScript and WASM (WebAssembly)
WASM-PDF Generates PDF files directly in the browser with JavaScript and WASM (WebAssembly). Idea here is to push all the work involved in creating a
Safe and rich Rust wrapper around the Vulkan API
Vulkano See also vulkano.rs. Vulkano is a Rust wrapper around the Vulkan graphics API. It follows the Rust philosophy, which is that as long as you do
GLFW3 bindings and idiomatic wrapper for Rust.
glfw-rs GLFW bindings and wrapper for The Rust Programming Language. Example extern crate glfw; use glfw::{Action, Context, Key}; fn main() { le
A curated list of wgpu code and resources.
Awesome wgpu A curated list of wgpu code and resources. PRs welcome. About wgpu https://github.com/gfx-rs/wgpu-rs matrix chat https://matrix.to/#/#wgp
Victorem - easy UDP game server and client framework for creating simple 2D and 3D online game prototype in Rust.
Victorem Easy UDP game server and client framework for creating simple 2D and 3D online game prototype in Rust. Example Cargo.toml [dependencies] vict
RTS game/engine in Rust and WebGPU
What is this? A real time strategy game/engine written with Rust and WebGPU. Eventually it will be able to run in a web browser thanks to WebGPU. This
A refreshingly simple data-driven game engine built in Rust
What is Bevy? Bevy is a refreshingly simple data-driven game engine built in Rust. It is free and open-source forever! WARNING Bevy is still in the ve
A Rust wrapper and bindings of Allegro 5 game programming library
RustAllegro A thin Rust wrapper of Allegro 5. Game loop example extern crate allegro; extern crate allegro_font; use allegro::*; use allegro_font::*;
Expanding opportunities standard library std::fs and std::io
fs_extra A Rust library that provides additional functionality not present in std::fs. Documentation Migrations to 1.x.x version Key features: Copy fi
ergonomic paths and files in rust
path_abs: ergonomic paths and files in rust. This library aims to provide ergonomic path and file operations to rust with reasonable performance. See
Rusty Object Notation
Rusty Object Notation RON is a simple readable data serialization format that looks similar to Rust syntax. It's designed to support all of Serde's da
pem-rs pem PEM jcreekmore/pem-rs [pem] — A Rust based way to parse and encode PEM-encoded data
pem A Rust library for parsing and encoding PEM-encoded data. Documentation Module documentation with examples Usage Add this to your Cargo.toml: [dep
rust-jsonnet - The Google Jsonnet( operation data template language) for rust
rust-jsonnet ==== Crate rust-jsonnet - The Google Jsonnet( operation data template language) for rust Google jsonnet documet: (http://google.github.io
Crate to parse and emit EDN
edn-rs Near Stable no breaking changes expected. Crate to parse and emit EDN This lib does not make effort to conform the EDN received to EDN Spec. Th
Rust library for reading/writing numbers in big-endian and little-endian.
byteorder This crate provides convenience methods for encoding and decoding numbers in either big-endian or little-endian order. Dual-licensed under M
Encoding and decoding support for BSON in Rust
bson-rs Encoding and decoding support for BSON in Rust Index Overview of BSON Format Usage BSON Values BSON Documents Modeling BSON with strongly type
I/O and binary data encoding for Rust
nue A collection of tools for working with binary data and POD structs in Rust. pod is an approach at building a safe interface for transmuting POD st
Rust high performance xml reader and writer
quick-xml High performance xml pull reader/writer. The reader: is almost zero-copy (use of Cow whenever possible) is easy on memory allocation (the AP
libhdfs binding and wrapper APIs for Rust
hdfs-rs libhdfs binding library and rust APIs which safely wraps libhdfs binding APIs Current Status Alpha Status (Rust wrapping APIs can be changed)
A crate to convert bytes to something more useable and the other way around in a way Compatible with the Confluent Schema Registry. Supporting Avro, Protobuf, Json schema, and both async and blocking.
#schema_registry_converter This library provides a way of using the Confluent Schema Registry in a way that is compliant with the Java client. The rel
Easy Hadoop Streaming and MapReduce interfaces in Rust
Efflux Efflux is a set of Rust interfaces for MapReduce and Hadoop Streaming. It enables Rust developers to run batch jobs on Hadoop infrastructure wh
Date and time library for Rust
Chrono: Date and Time for Rust It aims to be a feature-complete superset of the time library. In particular, Chrono strictly adheres to ISO 8601. Chro
A rust drawing library for high quality data plotting for both WASM and native, statically and realtimely 🦀 📈🚀
Plotters - A Rust drawing library focus on data plotting for both WASM and native applications 🦀 📈 🚀 Plotters is drawing library designed for rende
Plotly for Rust
Plotly.rs Plotly for Rust Getting Started | Recipes | API Docs | Changelog | | | A plotting library for Rust powered by Plotly.js. Usage Add this to y
Data plotting library for Rust
plotlib plotlib is a generic data visualisation and plotting library for Rust. It is currently in the very early stages of development. It can current
A small charting/visualization tool and partial vega implementation for Rust
Gust A charting library for rust! Disclaimer This is still very much a work in progress! APIs are very unstable and subject to change. Contributions a
Parameterized routing for generic resources in Rust
Usher Usher provides an easy way to construct parameterized routing trees in Rust. The nodes of these trees is naturally generic, allowing Usher to le
Rust Persistent Data Structures
Rust Persistent Data Structures Rust Persistent Data Structures provides fully persistent data structures with structural sharing. Setup To use rpds a
K-dimensional tree in Rust for fast geospatial indexing and lookup
kdtree K-dimensional tree in Rust for fast geospatial indexing and nearest neighbors lookup Crate Documentation Usage Benchmark License Usage Add kdtr
A priority queue for Rust with efficient change function.
PriorityQueue This crate implements a Priority Queue with a function to change the priority of an object. Priority and items are stored in an IndexMap
Array helpers for Rust's Vector and String types
array_tool Array helpers for Rust. Some of the most common methods you would use on Arrays made available on Vectors. Polymorphic implementations for
Extra iterator adaptors, iterator methods, free functions, and macros.
Itertools Extra iterator adaptors, functions and macros. Please read the API documentation here How to use with cargo: [dependencies] itertools = "0.1
High-performance runtime for data analytics applications
Weld Documentation Weld is a language and runtime for improving the performance of data-intensive applications. It optimizes across libraries and func
Dataframe structure and operations in Rust
Utah Utah is a Rust crate backed by ndarray for type-conscious, tabular data manipulation with an expressive, functional interface. Note: This crate w
ndarray: an N-dimensional array with array views, multidimensional slicing, and efficient operations
ndarray The ndarray crate provides an n-dimensional container for general elements and for numerics. Please read the API documentation on docs.rs or t
A safe, extensible ORM and Query Builder for Rust
A safe, extensible ORM and Query Builder for Rust API Documentation: latest release – master branch Homepage Diesel gets rid of the boilerplate for da
🧰 The Rust SQL Toolkit. An async, pure Rust SQL crate featuring compile-time checked queries without a DSL. Supports PostgreSQL, MySQL, SQLite, and MSSQL.
SQLx 🧰 The Rust SQL Toolkit Install | Usage | Docs Built with ❤️ by The LaunchBadge team SQLx is an async, pure Rust† SQL crate featuring compile-tim
PickleDB-rs is a lightweight and simple key-value store. It is a Rust version for Python's PickleDB
PickleDB PickleDB is a lightweight and simple key-value store written in Rust, heavily inspired by Python's PickleDB PickleDB is fun and easy to use u
⚡🦀 🧨 make your rust types fit DynamoDB and visa versa
🦀 🧨 dynomite dynomite makes DynamoDB fit your types (and visa versa) Overview Goals ⚡ make writing dynamodb applications in rust a productive experi
An implementation of Keccak derived functions specified in FIPS-202, SP800-185 and KangarooTwelve
tiny-keccak An implementation of Keccak derived functions specified in FIPS-202, SP800-185 and KangarooTwelve. Documentation The Keccak-f[1600] permut
Fast and efficient ed25519 signing and verification in Rust.
ed25519-dalek Fast and efficient Rust implementation of ed25519 key generation, signing, and verification in Rust. Documentation Documentation is avai
A pure-Rust implementation of group operations on Ristretto and Curve25519
curve25519-dalek A pure-Rust implementation of group operations on Ristretto and Curve25519. curve25519-dalek is a library providing group operations
A (mostly) pure-Rust implementation of various cryptographic algorithms.
Rust-Crypto A (mostly) pure-Rust implementation of various common cryptographic algorithms. Rust-Crypto seeks to create practical, auditable, pure-Rus
Easy to use cryptographic framework for data protection: secure messaging with forward secrecy and secure data storage. Has unified APIs across 14 platforms.
Themis provides strong, usable cryptography for busy people General purpose cryptographic library for storage and messaging for iOS (Swift, Obj-C), An
Usable, easy and safe pure-Rust crypto
orion About Orion is a cryptography library written in pure Rust. It aims to provide easy and usable crypto while trying to minimize the use of unsafe
Extendable HPC-Framework for CUDA, OpenCL and common CPU
Collenchyma • Collenchyma is an extensible, pluggable, backend-agnostic framework for parallel, high-performance computations on CUDA, OpenCL and comm
Mathematical optimization in pure Rust
argmin A pure Rust optimization framework This crate offers a numerical optimization toolbox/framework written entirely in Rust. It is at the moment p
DEFLATE, gzip, and zlib bindings for Rust
flate2 A streaming compression/decompression library DEFLATE-based streams in Rust. This crate by default uses the miniz_oxide crate, a port of miniz.
SIMD Floating point and integer compressed vector library
compressed_vec Floating point and integer compressed vector library, SIMD-enabled for fast processing/iteration over compressed representations. This
Brotli compressor and decompressor written in rust that optionally avoids the stdlib
rust-brotli What's new in 3.2 into_inner conversions for both Reader and Writer classes What's new in 3.0 A fully compatible FFI for drop-in compatibi
A Brotli implementation in pure and safe Rust
Brotli-rs - Brotli decompression in pure, safe Rust Documentation Compression provides a Read-struct to wrap a Brotli-compressed stream. A consumer
A Rust curses library, supports Unix platforms and Windows
pancurses pancurses is a curses library for Rust that supports both Linux and Windows by abstracting away the backend that it uses (ncurses-rs and pdc
Build terminal user interfaces and dashboards using Rust
tui-rs tui-rs is a Rust library to build rich terminal user interfaces and dashboards. It is heavily inspired by the Javascript library blessed-contri
create and test the style and formatting of text in your terminal applications
description: create and test the style and formatting of text in your terminal applications docs: https://docs.rs/termstyle termstyle is a library tha
Cross-platform Rust library for coloring and formatting terminal output
Coloring terminal output Documentation term-painter is a cross-platform (i.e. also non-ANSI terminals) Rust library for coloring and formatting termin
Rust library for ANSI terminal colours and styles (bold, underline)
rust-ansi-term This is a library for controlling colours and formatting, such as red bold text or blue underlined text, on ANSI terminals. View the Ru
Execution of and interaction with external processes and pipelines
subprocess The subprocess library provides facilities for execution of and interaction with external processes and pipelines, inspired by Python's sub
Rayon: A data parallelism library for Rust
Rayon Rayon is a data-parallelism library for Rust. It is extremely lightweight and makes it easy to convert a sequential computation into a parallel
Tools for concurrent programming in Rust
Crossbeam This crate provides a set of tools for concurrent programming: Atomics AtomicCell, a thread-safe mutable memory location.(no_std) AtomicCons
Rust cache structures and easy function memoization
cached Caching structures and simplified function memoization cached provides implementations of several caching structures as well as a handy macro f
Rust DLT (Diagnostic Log and Trace) packet parser
dlt_parse A zero allocation rust library for basic parsing & writing DLT (Diagnostic Log and Trace) packets. Currently only the parsing and writing of
An oauth2 client implementation providing the Device, Installed and Service Account flows.
yup-oauth2 is a utility library which implements several OAuth 2.0 flows. It's mainly used by google-apis-rs, to authenticate against Google services.
A OAuth2 server library, for use in combination with actix or other frontends, featuring a set of configurable and pluggable backends.
oxide-auth A OAuth2 server library, for use in combination with common web servers, featuring a set of configurable and pluggable backends. About oxid
Highly flexible library to manage and orchestrate JWT workflow
JWT Vault Highly flexible library to manage and orchestrate JWT workflow Examples | Website | Chat TODO Add more examples Improve coverage Features Ma
PortAudio bindings and wrappers for Rust.
rust-portaudio PortAudio bindings and wrappers for Rust. PortAudio is a free, cross-platform, open-source, audio I/O library. rust-portaudio is still
High-level PortMidi bindings and wrappers for Rust
portmidi-rs High-level PortMidi bindings for Rust. PortMidi website: http://portmedia.sourceforge.net/portmidi/ Installation Add this to your Cargo.to
Idiomatic Rust bindings for OpenAL 1.1 and extensions (including EFX).
alto alto provides idiomatic Rust bindings for OpenAL 1.1 and extensions (including EFX). WARNING Because Alto interacts with global C state via dynam
Astronomical algorithms in Rust
astro-rust Contents API Docs About Usage Contributing References About astro-rust is a library of advanced astronomical algorithms for the Rust progra
💥 Fast State-of-the-Art Tokenizers optimized for Research and Production
Provides an implementation of today's most used tokenizers, with a focus on performance and versatility. Main features: Train new vocabularies and tok
A Rust machine learning framework.
Linfa linfa (Italian) / sap (English): The vital circulating fluid of a plant. linfa aims to provide a comprehensive toolkit to build Machine Learning
Radiate is a parallel genetic programming engine capable of evolving solutions to many problems as well as training learning algorithms.
Radiate Coming from Evolutionary Radiation. Evolutionary radiation is a rapid increase in the number of species with a common ancestor, characterized
Rust implementation of real-coded GA for solving optimization problems and training of neural networks
revonet Rust implementation of real-coded genetic algorithm for solving optimization problems and training of neural networks. The latter is also know
darwin-rs, evolutionary algorithms with rust
darwin-rs This library allows you to write evolutionary algorithms (EA) using the Rust programming language. Written by Willi Kappler, License: MIT -
Execute genetic algorithm (GA) simulations in a customizable and extensible way.
genevo genevo provides building blocks to run simulations of optimization and search problems using genetic algorithms (GA). The vision for genevo is
Fast, parallel, extensible and adaptable genetic algorithms framework written in Rust
oxigen Oxigen is a parallel genetic algorithm framework implemented in Rust. The name comes from the merge of OXIdación (Rust translated to Spanish) a
A library for generating fake data in Rust.
Fake A Rust library for generating fake data. Installation Default (rand is required): [dependencies] fake = "2.4" rand = "0.8" If you want to use #[d
Travis CI and AppVeyor template to test your Rust crate on 5 architectures and publish binary releases of it for Linux, macOS and Windows
trust Travis CI and AppVeyor template to test your Rust crate on 5 architectures and publish binary releases of it for Linux, macOS and Windows Featur
Language Server Protocol (LSP) support for vim and neovim.
For legacy python implementation, see branch master. LanguageClient-neovim Language Server Protocol support for vim and neovim. More recordings at Upd
Facilitating high-level interactions between Wasm modules and JavaScript
wasm-bindgen Facilitating high-level interactions between Wasm modules and JavaScript. Guide | API Docs | Contributing | Chat Built with 🦀 🕸 by The
“The Tie Between Ruby and Rust.”
Rutie Rutie — /ro͞oˈˌtī/rOOˈˌtI/rüˈˌtaI/ Integrate Ruby with your Rust application. Or integrate Rust with your Ruby application. This project allows
A setuptools/wheel/cffi extension to embed a binary data in wheels
Milksnake Milksnake is an extension for setuptools that allows you to distribute dynamic linked libraries in Python wheels in the most portable way im
Objective-C Runtime bindings and wrapper for Rust.
Objective-C Runtime bindings and wrapper for Rust. Documentation: http://ssheldon.github.io/rust-objc/objc/ Crate: https://crates.io/crates/objc Messa
Rust bindings for writing safe and fast native Node.js modules.
Rust bindings for writing safe and fast native Node.js modules. Getting started Once you have the platform dependencies installed, getting started is
Bridge the gap between Haskell and Rust
Curryrs Curryrs (a play on the name of Haskell Curry, rs for Rust libraries, and it's pronunciation couriers) is a library for providing easy to use b
Safe interop between Rust and C++
CXX — safe FFI between Rust and C++ This library provides a safe mechanism for calling C++ code from Rust and Rust code from C++, not subject to the m
Automatically generates Rust FFI bindings to C (and some C++) libraries.
bindgen bindgen automatically generates Rust FFI bindings to C (and some C++) libraries. For example, given the C header doggo.h: typedef struct Doggo
The sysroot manager that lets you build and customize `std`
PSA: Xargo is in maintenance mode xargo The sysroot manager that lets you build and customize std Cross compiling `std` for i686-unknown-linux-gnu Xar
A buildpack for Rust applications on Heroku, with full support for Rustup, cargo and build caching.
Heroku buildpack for Rust This is a Heroku buildpack for Rust with support for cargo and rustup. Features include: Caching of builds between deploymen
Docker images for compiling static Rust binaries using musl-libc and musl-gcc, with static versions of useful C libraries. Supports openssl and diesel crates.
rust-musl-builder: Docker container for easily building static Rust binaries Source on GitHub Changelog UPDATED: Major updates in this release which m
GitHub Actions for mdBook (rust-lang/mdBook) ⚡️ Setup mdBook quickly and build your site fast. Linux (Ubuntu), macOS, and Windows are supported.
GitHub Actions for mdBook rust-lang/mdBook Setup Action. We can run mdBook on a virtual machine of GitHub Actions by this mdBook action. Linux, macOS,
The Git Commit Message and Changelog Generation Framework :book:
git-journal 📖 The Git Commit Message and Changelog Generation Framework Table of contents: TL;DR Installation Usage Default output Template output Co
Detects usage of unsafe Rust in a Rust crate and its dependencies.
cargo-geiger ☢️ A program that lists statistics related to the usage of unsafe Rust code in a Rust crate and all its dependencies. This cargo plugin w
Powerful database anonymizer with flexible rules. Written in Rust.
[Data]nymizer Powerful database anonymizer with flexible rules. Written in Rust. Datanymizer is created & supported by Evrone. What else we develop wi
Simple and fast web server
see Overview Simple and fast web server as a single executable with no extra dependencies required. Features Built with Tokio and Hyper TLS encryption
Host These Things Please - a basic http server for hosting a folder fast and simply
http Host These Things Please - a basic HTTP server for hosting a folder fast and simply Selected features See the manpage for full list. Symlinks fol
A blazingly fast static web server with routing, templating, and security in a single binary you can set up with zero code. :zap::crab:
binserve ⚡ 🦀 A blazingly fast static web server with routing, templating, and security in a single binary you can set up with zero code. 🔥 UPDATE: N
Secure and fast microVMs for serverless computing.
Our mission is to enable secure, multi-tenant, minimal-overhead execution of container and function workloads. Read more about the Firecracker Charter
The fastest and safest AV1 encoder.
rav1e The fastest and safest AV1 encoder. Table of Content Overview Features Documentation Releases Building Dependency: NASM Release binary Unstable
Utilities and tools based around Amazon S3 to provide convenience APIs in a CLI
s3-utils Utilities and tools based around Amazon S3 to provide convenience APIs in a CLI. This tool contains a small set of command line utilities for