6300 Repositories
Rust why-you-should-learn-rust-examples Libraries
A simple, cross-platform GUI automation module for Rust.
AutoPilot AutoPilot is a Rust port of the Python C extension AutoPy, a simple, cross-platform GUI automation library for Python. For more information,
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
A Rust library for PDF document manipulation.
lopdf A Rust library for PDF document manipulation. Example Code Create PDF document #[macro_use] extern crate lopdf; use lopdf::{Document, Object, St
An easy-to-use library for writing PDF in Rust
printpdf printpdf is a library designed for creating printable PDF documents. Crates.io | Documentation [dependencies] printpdf = "0.3.2" Features Cur
Generating PDF files in pure Rust
pdf-canvas A pure rust library for generating PDF files. Currently, simple vector graphics and text set in the 14 built-in fonts are supported. To use
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
Safe OpenGL wrapper for the Rust language.
glium Note to current and future Glium users: Glium is no longer actively developed by its original author. That said, PRs are still welcome and maint
An OpenGL function pointer loader for Rust
gl-rs Overview This repository contains the necessary building blocks for OpenGL wrapper libraries. For more information on each crate, see their resp
A complete harfbuzz's shaping algorithm port to Rust
rustybuzz rustybuzz is a complete harfbuzz's shaping algorithm port to Rust. Matches harfbuzz v2.7.0 Why? Because you can add rustybuzz = "*" to your
Mirror of https://gitlab.redox-os.org/redox-os/rusttype
RustType RustType is a pure Rust alternative to libraries like FreeType. The current capabilities of RustType: Reading OpenType formatted fonts and fo
A low-overhead Vulkan-like GPU API for Rust.
Getting Started | Documentation | Blog gfx-rs gfx-rs is a low-level, cross-platform graphics and compute abstraction library in Rust. It consists of t
Native WebGPU implementation based on gfx-hal
This is an active GitHub mirror of the WebGPU implementation in Rust, which now lives in "gfx/wgpu" of Mozilla-central. Issues and pull requests are a
An fast, offline reverse geocoder (1,000 HTTP requests per second) in Rust.
Rust Reverse Geocoder A fast reverse geocoder in Rust. Inspired by Python reverse-geocoder. Links Crate 2.0.0 Docs 1.0.1 Docs Description rrgeo takes
Rust crate for performing coordinate transforms
Synopsis A Rust crate use for performing coordinate transformations. The crate relies on nalgebra vectors to perform the coordinate transformations. C
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
Rust bindings for libtcod 1.6.3 (the Doryen library/roguelike toolkit)
Warning: Not Maintained This project is no longer actively developed or maintained. Please accept our apologies. Open pull requests may still get merg
SFML bindings for Rust
rust-sfml Rust bindings for SFML, the Simple and Fast Multimedia Library. Requirements Linux, Windows, or OS X Rust 1.42 or later SFML 2.5 CSFML 2.5 D
SDL2 bindings for Rust
Rust-SDL2 Bindings for SDL2 in Rust Changelog for 0.34.2 Overview Rust-SDL2 is a library for talking to the new SDL2.0 libraries from Rust. Low-level
SDL bindings for Rust
Rust-SDL Bindings for SDL in Rust Overview Rust-SDL is a library for talking to SDL from Rust. Low-level C components are wrapped in Rust code to make
Rust bindings for GDNative
GDNative bindings for Rust Rust bindings to the Godot game engine. Website | User Guide | API Documentation Stability The bindings cover most of the e
unrust - A pure rust based (webgl 2.0 / native) game engine
unrust A pure rust based (webgl 2.0 / native) game engine Current Version : 0.1.1 This project is under heavily development, all api are very unstable
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
Rust library to create a Good Game Easily
ggez What is this? ggez is a Rust library to create a Good Game Easily. The current version is 0.6.0-rc0. This is a RELEASE CANDIDATE version, which m
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
High performance Rust ECS library
Legion aims to be a feature rich high performance Entity component system (ECS) library for Rust game projects with minimal boilerplate. Getting Start
Specs - Parallel ECS
Specs Specs Parallel ECS Specs is an Entity-Component System written in Rust. Unlike most other ECS libraries out there, it provides easy parallelism
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::*;
Zero-details, privacy-focused in-app file system.
ZboxFS ZboxFS is a zero-details, privacy-focused in-app file system. Its goal is to help application store files securely, privately and reliably. By
Extended attribute library for rust.
xattr A small library for setting, getting, and listing extended attributes. Supported Platforms: Linux, MacOS, FreeBSD, and NetBSD. API Documentation
Temporary file library for rust
tempfile A secure, cross-platform, temporary file library for Rust. In addition to creating temporary files, this library also allows users to securel
Temporary directory management for Rust
tempdir A Rust library for creating a temporary directory and deleting its entire contents when the directory is dropped. Documentation Deprecation No
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
High level FFI binding around the sys mount & umount2 calls, for Rust
sys-mount High level FFI bindings to the mount and umount2 system calls, for Rust. Examples Mount This is how the mount command could be written with
A TOML encoding/decoding library for Rust
toml-rs A TOML decoder and encoder for Rust. This library is currently compliant with the v0.5.0 version of TOML. This library will also likely contin
tnetstring serialization library for rust.
TNetStrings: Tagged Netstrings This module implements bindings for the tnetstring serialization format. API let t = tnetstring::str("hello world"); le
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
Rust implementation of Google protocol buffers
rust-protobuf Protobuf implementation in Rust. Written in pure rust Generate rust code Has runtime library for generated code (Coded{Input|Output}Stre
PROST! a Protocol Buffers implementation for the Rust Language
PROST! prost is a Protocol Buffers implementation for the Rust Language. prost generates simple, idiomatic Rust code from proto2 and proto3 files. Com
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
MessagePack implementation for Rust / msgpack.org[Rust]
RMP - Rust MessagePack RMP is a pure Rust MessagePack implementation. This repository consists of three separate crates: the RMP core and two implemen
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
A HTML entity encoding library for Rust
A HTML entity encoding library for Rust Example usage All example assume a extern crate htmlescape; and use htmlescape::{relevant functions here}; is
A HTTP Archive format (HAR) serialization & deserialization library, written in Rust.
har-rs HTTP Archive format (HAR) serialization & deserialization library, written in Rust. Install Add the following to your Cargo.toml file: [depende
FlatBuffers compiler (flatc) as API (with focus on transparent `.fbs` to `.rs` code-generation via Cargo build scripts integration)
FlatBuffers flatc API for Rust This crate provides a programmatical way to invoke flatc command (e.g. from build.rs) to generate Rust (or, in fact, an
A CSV parser for Rust, with Serde support.
csv A fast and flexible CSV reader and writer for Rust, with support for Serde. Dual-licensed under MIT or the UNLICENSE. Documentation https://docs.r
Rust implementation of CRC(16, 32, 64) with support of various standards
crc Rust implementation of CRC(16, 32, 64). MSRV is 1.46. Usage Add crc to Cargo.toml [dependencies] crc = "2.0" Compute CRC use crc::{Crc, Algorithm,
Character encoding support for Rust
Encoding 0.3.0-dev Character encoding support for Rust. (also known as rust-encoding) It is based on WHATWG Encoding Standard, and also provides an ad
A Gecko-oriented implementation of the Encoding Standard in Rust
encoding_rs encoding_rs an implementation of the (non-JavaScript parts of) the Encoding Standard written in Rust and used in Gecko (starting with Fire
Cap'n Proto for Rust
Cap'n Proto for Rust documentation blog Introduction Cap'n Proto is a type system for distributed systems. With Cap'n Proto, you describe your data an
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
Implementation of Bencode encoding written in rust
Rust Bencode Implementation of Bencode encoding written in rust. Project Status Not in active developement due to lack of time and other priorities. I
A Rust ASN.1 (DER) serializer.
rust-asn1 This is a Rust library for parsing and generating ASN.1 data (DER only). Installation Add asn1 to the [dependencies] section of your Cargo.t
An impish, cross-platform binary parsing crate, written in Rust
libgoblin Documentation https://docs.rs/goblin/ changelog Usage Goblin requires rustc 1.40.0. Add to your Cargo.toml [dependencies] goblin = "0.3" Fea
A binary encoder / decoder implementation in Rust.
Bincode A compact encoder / decoder pair that uses a binary zero-fluff encoding scheme. The size of the encoded object will be the same or smaller tha
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
An XML library in Rust
xml-rs, an XML library for Rust Documentation xml-rs is an XML library for Rust programming language. It is heavily inspired by Java Streaming API for
An XPath library in Rust
SXD-XPath An XML XPath library in Rust. Overview The project is broken into two crates: document - Basic DOM manipulation and reading/writing XML from
An XML library in Rust
SXD-Document An XML library in Rust. Overview The project is currently broken into two crates: document - Basic DOM manipulation and reading/writing X
A XML parser written in Rust
RustyXML Documentation RustyXML is a namespace aware XML parser written in Rust. Right now it provides a basic SAX-like API, and an ElementBuilder bas
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
LibYAML bindings for Rust
libyaml-rust LibYAML bindings for Rust Dependencies LibYAML 0.1.4 or higher Stable Rust (2015/2018 edition) Usage Parse from memory extern crate yaml;
Strongly typed YAML library for Rust
Serde YAML This crate is a Rust library for using the Serde serialization framework with data in YAML file format. This library does not reimplement a
A pure rust YAML implementation.
yaml-rust The missing YAML 1.2 implementation for Rust. yaml-rust is a pure Rust YAML 1.2 implementation, which enjoys the memory safety property and
Rust port of gjson,get JSON value by dotpath syntax
A-JSON Read JSON values quickly - Rust JSON Parser change name to AJSON, see issue Inspiration comes from gjson in golang Installation Add it to your
JSON implementation in Rust
json-rust Parse and serialize JSON with ease. Changelog - Complete Documentation - Cargo - Repository Why? JSON is a very loose format where anything
Rust port of simdjson
SIMD Json for Rust Rust port of extremely fast simdjson JSON parser with serde compatibility. readme (for real!) simdjson version Currently tracking
Strongly typed JSON library for Rust
Serde JSON Serde is a framework for serializing and deserializing Rust data structures efficiently and generically. [dependencies] serde_json = "1.0
JSON parser which picks up values directly without performing tokenization in Rust
Pikkr JSON parser which picks up values directly without performing tokenization in Rust Abstract Pikkr is a JSON parser which picks up values directl
Send nice emails
Jolimail is an open source alternative to all the transactionnal email solutions. Why did we build jolimail? Jolimail comes from the frustration of us
Rust implementation of catapulte email sender
Catapulte What is catapulte? Catapulte is an open source mailer you can host yourself. You can use it to quickly catapult your transactionnal emails t
Implementation of mjml in rust
MRML Introduction This project is a reimplementation of the nice MJML markup language in Rust. How to use it use mrml; fn main() { match mrml::to
Rust library to parse mail files
mailparse A simple parser for MIME email messages. API The primary entry point for this library is the following function: parse_mail(&[u8]) - Re
a mailer library for Rust
lettre A mailer library for Rust NOTE: this readme refers to the 0.10 version of lettre, which is still being worked on. The master branch and the alp
Unofficial Rust library for the SendGrid API
sendgrid-rs Unofficial Rust library for the SendGrid API. This crate requires Rust 1.15 or higher as it uses a crate that has a custom derive implemen
新しい IMAP client in Rust
新しい IMAP client 新しい (atarashii/new) IMAP client in Rust. It supports plain and secure connections. In progress It's under development... Usage Put thi
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)
Easy-to-use beanstalkd client for Rust (IronMQ compatible)
rust-beanstalkd Easy-to-use beanstalkd client for Rust (IronMQ compatible) Install Add this dependency to your Cargo.toml beanstalkd = "*" Documentati
Rust client for Apache Kafka
Kafka Rust Client Project Status This project is starting to be maintained by John Ward, the current status is that I am bringing the project up to da
A fully asynchronous, futures-based Kafka client library for Rust based on librdkafka
rust-rdkafka A fully asynchronous, futures-enabled Apache Kafka client library for Rust based on librdkafka. The library rust-rdkafka provides a safe
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
The implementation of the Persian (Solar Hijri) Calendar in Rust
Rust Persian Calendar Rust Persian Calendar v0.1.1 provides functionality for conversion among Persian (Solar Hijri) and Gregorian calendars. A Julian
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 crate to extend io::Read & io::Write types with progress callbacks
progress-streams Rust crate to provide progress callbacks for types which implement io::Read or io::Write. Examples Reader extern crate progress_strea
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
Roaring bitmap implementation for Rust
RoaringBitmap This is not yet production ready. The API should be mostly complete now. This is a Rust port of the Roaring bitmap data structure, initi
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
Generic array types in Rust
generic-array This crate implements generic array types for Rust. Requires minumum Rust version of 1.36.0, or 1.41.0 for From[T; N] implementations
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
Ternary search tree collection in rust
tst Ternary search tree collection in rust with similar API to std::collections as it possible. Ternary search tree is a type of trie (sometimes calle