86 Repositories
Rust type Libraries
Rustato: A powerful, thread-safe global state management library for Rust applications, offering type-safe, reactive state handling with an easy-to-use macro-based API.
Rustato State Manager A generical thread-safe global state manager for Rust Introduction • Features • Installation • Usage • Advanced Usage • Api Refe
ergonomic and precise error handling built atop type-level set arithmetic
terrors - the Rust error handling library Handling errors means taking a set of possible error types, removing the ones that are locally addressible,
Ergonomic and precise error handling provided by error sets. Inspired by Zig's error set type.
Error Set Error Set simplifies error management by providing a streamlined method for defining errors and easily converting between them. Resultingly,
Shiva library: Implementation in Rust of a parser and generator for documents of any type
Shiva Shiva library: Implementation in Rust of a parser and generator for documents of any type Features Common Document Model (CDM) for all document
Simple procedural macros `tnconst![...]`, `pconst![...]`, `nconst![...]` and `uconst![...]` that returns the type level integer from `typenum` crate.
typenum-consts Procedural macros that take a literal integer (or the result of an evaluation of simple mathematical expressions or an environment vari
A performant, type-1 zkEVM written in Rust & SP1.
SP1 Reth SP1 Reth is a 100% open-source POC that showcases how any rollup can use SP1 to build a performant (type-1, bytecode compatible) zkEVM with l
A procedural macro that copy-pastes match arms for new type variant enums.
All the same! If you ever had code that looks like this: use std::io; use std::pin::Pin; use std::task::{Context, Poll}; use tokio::io::AsyncWrite; us
Dynamic, Type-Erased Key-Value Maps in Rust
Dynamic Objects in Rust Do you love Rust but are tired of being constrained by static typing when you need a map to hold values of different types? Do
A box with vtable, erasing the type of the contained object
VBox VBox is a type erased Box of trait object that stores the vtable pointer. VBox is just like a Boxdyn Trait but erases type Trait so that to use
A tuple crate for Rust, which introduces a tuple type represented in recusive form.
tuplez This crate introduces a tuple type represented in recursive form rather than parallel form. Motivation The primitive tuple types are represente
Keybinder to type diacrytical characters without needing to hack the layout itself. Supports bindings to the left Alt + letter
Ďíáǩříťíǩád I just thought that it's a shame the word diakritika does not have any diacritics in it. Key points diakritika is a simple Windows daemon
Like HashSet but retaining INSERTION order and without `Hash` requirement on the Element type.
identified_vec A collection of unique identifiable elements which retains insertion order, inspired by Pointfree's Swift Identified Collections. Simil
A simple type safety solution for Bevy ECS.
🍎 Moonshine Kind A simple type safety solution for Bevy ECS. Overview An Entity is a generic way to reference entities within Bevy ECS: #[derive(Comp
A "Type 0" zkEVM. Prove validity of Ethereum blocks using RISC Zero's zkVM
zeth NEW: Zeth now supports Optimism blocks! Just pass in --network=optimism! Zeth is an open-source ZK block prover for Ethereum built on the RISC Ze
A crate that allows you to mostly-safely cast one type into another type.
A crate that allows you to mostly-safely cast one type into another type. This is mostly useful for generic functions, e.g. pub fn fooS(s: S) {
Chess implemented entirely in the Rust and TS type systems.
Type System Chess This repo contains chess implemented entirely in the (stable) Rust and Typescript type systems. Both languages feature turing comple
A type-safe, K-sortable, globally unique identifier
type-safe-id A type-safe, K-sortable, globally unique identifier. Typed implementation of https://github.com/jetpack-io/typeid in Rust. Examples Stati
`dfx new --type=rust` + burn-rs MNIST web inference example
ic-mnist The frontend provides a canvas where users can draw a digit. The drawn digit is then sent to the backend canister running burn-rs for inferen
Web-based tool that allows browsing and comparing symbol and type information of Microsoft Windows binaries across different versions of the OS.
WinDiff About WinDiff is an open-source web-based tool that allows browsing and comparing symbol and type information of Microsoft Windows binaries ac
Rust GraphQL server using simple type-only schema
SimpleGQL This library allows a simplified GraphQL schema to be given and will run a server with a backend store (currently only SQLite) and a set of
A special rope, designed to work with any data type that is not String
AnyRope AnyRope is an arbitrary data type rope for Rust, designed for similar operations that a rope would do, but targeted at data types that are not
Type safe multipart/form-data handling for axum.
axum_typed_multipart Designed to seamlessly integrate with Axum, this crate simplifies the process of handling multipart/form-data requests in your we
A Rust trait to convert numbers of any type and size to their English representation.
num2english This Rust crate provides the NumberToEnglish trait which can be used to convert any* number to its string representation in English. It us
A type-safe Rust interface to the Nix CLI
runix A typesafe interface to the nix CLI. by flox Installation Install with cargo add (Rust = 1.64) cargo add runix Alternatively, manually add runi
👩💻Type-checked JSX for Rust
This crate provides the html! macro for building fully type checked HTML documents inside your Rust code using roughly JSX compatible syntax.
Rust compile-time type information experiment
Compile-Time Type Information This crate is an experimental standard library side implementation of potential ctti language feature. The idea is to pr
Simplistic complier~virtual-machine that transforms AST into a Rust function, with basic type checking
rast-jit-vm rast-jit-vm is a simplistic, proof-of-concept~ish compiler / virtual machine that transforms syntax tree into a Rust function, type-checki
Translate C++/Rust type into C type with the same memory layout
clayout, translate C++/Rust type into C type with the same memory layout. Generally, clayout is used together with bpftrace. clayout is developed on d
A library for writing type-safe Durable Objects in Rust.
do-proxy A library for writing type-safe Durable Objects (DOs) in Rust. With do-proxy you can: Easily write type-safe APIs for Durable Objects. Abstra
A fast static code analyzer & language server for Python
pylyzer ⚡ pylyzer is a static code analyzer / language server for Python written in Rust. Installation cargo (rust package manager) cargo install pyly
Rust type wrapper to cache hash of potentially large structures.
CachedHash For a type T, CachedHashT wraps T and implements Hash in a way that caches T's hash value. This is useful when T is expensive to hash (fo
Using OpenAI Codex's "davinci-edit" Model for Gradual Type Inference
OpenTau: Using OpenAI Codex for Gradual Type Inference Current implementation is focused on TypeScript Python implementation comes next Requirements r
Decode SCALE bytes into custom types using a scale-info type registry and a custom Visitor impl.
scale-decode This crate attempts to simplify the process of decoding SCALE encoded bytes into a custom data structure given a type registry (from scal
Merge multiple Juniper object definitions into a single object type.
juniper-compose Merge multiple Juniper object definitions into a single object type. crates.io | docs | github Motivation You are building a GraphQL s
A type-safe, high speed programming language for scalable systems
A type-safe, high speed programming language for scalable systems! (featuring a cheesy logo!) note: the compiler is unfinished and probably buggy. if
Simple type-safe relational algebra evaluator built entirely in Rust
ra-evaluator A simple type-safe relational algebra evaluator. Relational algebra provides the theoretical foundation for relational databases and the
Generate type-checked Rust from your PostgreSQL.
Cornucopia Generate type checked Rust from your SQL Install | Example Cornucopia is a small CLI utility resting on postgres designed to facilitate Pos
Graphical font editor (GTK + Rust)
gerb *gerb ʰ-: reconstructed Proto-Indo-European root, meaning to carve gerb: a WIP font editor in gtk3 and rust Introduction gerb is an experimental,
Build database expression type checker and vectorized runtime executor in type-safe Rust
Typed Type Exercise in Rust Build database expression type checker and vectorized runtime executor in type-safe Rust. This project is highly inspired
Type erased vector. All elements have the same type.
Type erased vector. All elements have the same type. Designed to be type-erased as far as possible - most of the operations does not know about concre
The most fundamental type for async synchronization: an intrusive linked list of futures
wait-list This crate provides WaitList, the most fundamental type for async synchronization. WaitList is implemented as an intrusive linked list of fu
Type-safe IPC for Tauri using GraphQL
Tauri Plugin graphql A plugin for Tauri that enables type-safe IPC through GraphQL. Install Rust [dependencies] tauri-plugin-graphql = "0.2" JavaScrip
Type-check non-existing `Phantom` code for Fun And Profit
Sometimes you may want to write Rust code that ought to be type-checked (e.g., borrow-checked) in the same fashion as real Rust code even though that code is never intended to be run / to affect or even reach code generation.
A small, 8-byte, ID type for use in rust applications that need a pretty unique identifier
TinyId A small, 8-byte, ID type for use in rust applications that need a pretty unique identifier that is not required to be cryptographically secure
Type-safe SQL query wrappers
fnsql The fnsql crate provides simple type-safe optional wrappers around SQL queries. Instead of calling type-less .query() and .execute(), you call
Serializable map of any type.
🗂️ type_reg Serializable map of any type. This library provides a map that can store any serializable type, and retrieve it as the strong type. Seria
Custom deserialization for fields that can be specified as multiple types.
serde-this-or-that Custom deserialization for fields that can be specified as multiple types. This crate works with Cargo with a Cargo.toml like: [dep
A statically-typed, interpreted programming language, with generics and type inference
Glide A programming language. Currently, this includes: Static typing Generics, with monomorphization Type inference on function calls func identityT
This library implements a type macro for a zero-sized type that is Serde deserializable only from one specific value.
Monostate This library implements a type macro for a zero-sized type that is Serde deserializable only from one specific value. [dependencies] monosta
A linear algebra library with excellent type safety
Static L.A. (Linear Algebra) A fast minimal ultra type safe linear algebra library. While ndarray offers no compile time type checking on dimensionali
A redis module that provides a type for inventory deduction in flash sales
A redis module that provides a type for inventory deduction in flash sales
Next-generation, type-safe CLI parser for Rust
Next-generation, type-safe CLI parser for Rust
sblade or switchblade it's a multitool in one capable of doing simple analysis with any type of data, attempting to speed up ethical hacking activities
sblade or switchblade it's a multitool in one capable of doing simple analysis with any type of data, attempting to speed up ethical hacking activities
An annotated string type in Rust, made up of string slices
A string type made up of multiple annotated string slices.
Onlyfans-type web service based on TOR with maximum privacy features.
onionfans Onlyfans-type web service based on TOR with maximum privacy features. Features "Vanishing" single-use feed CDN links Landing page No JavaScr
Error context library with support for type-erased sources and backtraces, targeting full support of all features on stable Rust
Error context library with support for type-erased sources and backtraces, targeting full support of all features on stable Rust, and with an eye towards serializing runtime errors using serde.
Learn Rust black magics by implementing basic types in database systems
Type Exercise in Rust (In Chinese) 数据库表达式执行的黑魔法:用 Rust 做类型体操 This is a short lecture on how to use the Rust type system to build necessary components
Cap'n Proto is a type system for distributed systems
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
The never type (the true one!) in stable Rust.
::never-say-never The ! type. In stable Rust. Since 1.14.0. Better than an enum Never {} definition would be, since an instance of type ! automagicall
A bidirectional type checker
A bidirectional type inference system loosely based on Complete and Easy Bidirectional Typechecking for Higher-Rank Polymorphism.
Didactic implementation of the type checker described in "Complete and Easy Bidirectional Typechecking for Higher-Rank Polymorphism" written in OCaml
bidi-higher-rank-poly Didactic implementation of the type checker described in "Complete and Easy Bidirectional Typechecking for Higher-Rank Polymorph
An implementation of a predicative polymorphic language with bidirectional type inference and algebraic data types
Vinilla Lang Vanilla is a pure functional programming language based on System F, a classic but powerful type system. Merits Simple as it is, Vanilla
Some collections to store a fixed number of elements of a specific type.
This repo provide some useful data-structures, such as: Array, HashMap, HashSet, BTreeMap, BTreeSet, etc... That lives on the stack. It's a good choic
A simple and convenient way to bundle owned data with a borrowing type.
A simple and convenient way to bundle owned data with a borrowing type. The Problem One of the main selling points of Rust is its borrow checker, whic
Self Organizing Map (SOM) is a type of Artificial Neural Network (ANN) that is trained using an unsupervised, competitive learning to produce a low dimensional, discretized representation (feature map) of higher dimensional data.
som Self Organizing Map Pre-requisites Setup rust To download Rustup and install Rust, run the following in your terminal, then follow the on-screen i
A blazing fast, type-safe template engine for Rust.
markup.rs A blazing fast, type-safe template engine for Rust. markup.rs is a template engine for Rust powered by procedural macros which parses the te
CBOR (binary JSON) for Rust with automatic type based decoding and encoding.
THIS PROJECT IS UNMAINTAINED. USE serde_cbor INSTEAD. This crate provides an implementation of RFC 7049, which specifies Concise Binary Object Represe
Assembly-level implementation of interesting data types
Clnooms Assembly-level implementation of various interesting data types on Rust Table of Contents Data Types Half-precision floating point (f16) Exten
RedisJSON - a JSON data type for Redis
RedisJSON RedisJSON is a Redis module that implements ECMA-404 The JSON Data Interchange Standard as a native data type. It allows storing, updating a
Use explicit container types with Scrypto! Leverage the Rust compiler's type checking to increase security and productivity when developing Radix blueprints.
Scrypto Static Types Use explicit container types with Scrypto! Leverage the Rust compiler's type checking to increase security and productivity when
A type-safe, high performance ORM framework
A type-safe, high performance ORM framework
A fusion of OTP lib/dialyzer + lib/compiler for regular Erlang with type inference
Typed ERLC The Problem I have a dream, that one day there will be an Erlang compiler, which will generate high quality type-correct code from deduced
Program analysis playground for a simple, imperative language
Proggers Proggers is a program analysis playground for a simple, imperative language. Features Numerical analysis using abstract interpretation Type-c
A Rust framework for building context-sensitive type conversion.
Xylem is a stateful type conversion framework for Rust.
Mononym is a library for creating unique type-level names for each value in Rust.
Mononym is a library for creating unique type-level names for each value in Rust.
Generator of Firestore rules and type safe client code.
Generator of Firestore rules and type safe client code. Usage [WIP] Install from npm or curl. $ npm install -g firegen Setting your yml. # firegen.yml
Tyrade: a pure functional language for type-level programming in Rust
A pure functional language for type-level programming in Rust
Turbine is a toy CLI app for converting Rails schema declarations into equivalent type declarations in other languages.
Turbine Turbine is a toy CLI app for converting Rails schema declarations into equivalent type declarations in other languages. It’s described as a to
A memory efficient immutable string type that can store up to 24* bytes on the stack
compact_str A memory efficient immutable string type that can store up to 24* bytes on the stack. * 12 bytes for 32-bit architectures About A CompactS
A quick and dirty Space Invaders type game in Bevy, with attached tutorial.
This article is in-development and will be released in full form soon. It'll appear on Medium (my publisher likes that), with this as a the accompanyi
A cross-platform GUI library for Rust focused on simplicity and type-safety
A cross-platform GUI library for Rust, inspired by Elm
This crate provides a convenient macro that allows you to generate type wrappers that promise to always uphold arbitrary invariants that you specified.
prae This crate provides a convenient macro that allows you to generate type wrappers that promise to always uphold arbitrary invariants that you spec
Experimental type-safe geometric algebra for Rust
Projective Geometric Algebra This library is a Rust code generator, generating the mathematics you need for a geometric algebra library. I made it mos
Type-safe, compiled Jinja-like templates for Rust
Askama Askama implements a template rendering engine based on Jinja. It generates Rust code from your templates at compile time based on a user-define
A static, type inferred and embeddable language written in Rust.
gluon Gluon is a small, statically-typed, functional programming language designed for application embedding. Features Statically-typed - Static typin