71 Repositories
Rust aarch64-std Libraries
A drop-in replacement for std::time::Instant that is faster and more accurate.
Fastant A drop-in replacement for std::time::Instant that measures time with high performance and high accuracy powered by Time Stamp Counter (TSC). U
This library provides a convenient derive macro for the standard library's std::error::Error trait.
derive(Error) This library provides a convenient derive macro for the standard library's std::error::Error trait. [dependencies] therror = "1.0" Compi
A SIMD implementation of Keccak256 for aarch64, forked from Remco Bloeman's Goldilocks K12 implementation.
keccak256-aarch64 Warning This crate was forked from real cryptographers (Goldilocks by Remco Bloeman), by not a real cryptographer. Do not use this k
Simplify temporary email management and interaction, including message retrieval and attachment downloads, using Rust.
Tempmail The Tempmail simplifies temporary email management and interaction, including message retrieval and attachment downloads, using the Rust prog
A rust-based mechanical keyboard firmware
rumcake A rust-based mechanical keyboard firmware that aims to be decentralized, featureful, and easy to configure. โ rumcake is still a work in progr
Fast array expressions on the stack, no-std compatible
Strobe Fast, low-memory, elementwise array expressions on the stack. Compatible with no-std (and no-alloc) environments. This crate provides array exp
An alternative `std`-like implementation built on origin
origin-studio An alternative `std`-like implementation built on origin origin-stdio is an alternative std-like implementation built on origin. At this
no-std no-alloc Rust protobufs.
noproto No-std, no-alloc protocol buffers (protobuf) implementation in Rust, for embedded systems. Optimized for binary size and memory usage, not for
Zero-copy, no-std proquint encoding and decoding
proqnt A pronounceable quintuplet, or proquint, is a pronounceable 5-letter string encoding a unique 16-bit integer. Proquints may be used to encode b
A no_std GIF library for embedded applications(embedded-graphics)
tinygif A tiny gif decoder written in no_std Rust. This crate requires about 20kB of memory to decode a gif. basic decoding frame iterator interlace s
Ideas = Creations, a multi-language CMS(Content Management System) based on Rust Web stacks, with long-term upgrade and maintenance.
Ideas = Creations ไธญๆ RustHub: Rust ideas yesterday, shining creations today! This repository holds source code used to run https://rusthub.org, it's
A no-std esp32 Wifi Lamp
Nostd-wifi-lamp A Wi-Fi controllable lamp written in Rust for the ESP32 using esp-hal. This was created for a blog post you can read here. Usage Sadly
A Rust driver for the Arm Generic Interrupt Controller version 3 or 4 (GICv3 and GICv4).
Arm Generic Interrupt Controller driver This crate provides a Rust driver for the Arm Generic Interrupt Controller version 3 or 4 (GICv3 and GICv4). C
A minimal, allocation-free Prometheus/OpenMetrics metrics implementation for `no-std` and embedded Rust.
tinymetrics a minimal, allocation-free Prometheus/OpenMetrics metrics implementation for no-std and embedded projects. why should you use it? you may
A Platform-less, Runtime-less Actor Computing Model
CrossBus A Platform-Less, Runtime-Less Actor Computing Model Overview CrossBus is an implementation of Actor Computing Model, with the concept that Ru
An ownership model that is used to replace the Ring in Linux.
std-ownership An ownership model that is used to replace the Ring in Linux. It's 10x faster than Ring in Syscall. Overview The ownership system allows
Prototype of the `std::io::ensure!` family of macros
io-ensure Prototype of the `std::io::ensure` family of macros API Docs | Releases | Contributing Installation $ cargo add io-ensure Safety This crate
๐ฌ shell-candy is a library that wraps Rust's `std::process::Command`
๐ฌ shell-candy is a library that wraps Rust's `std::process::Command`, providing a functional mechanism for handling stdout/stderr streams of spawned tasks..
An embedded-hal driver for the TT21100 multi-touch touchscreen controller
tt21100 An embedded-hal driver for the TT21100 multi-touch touchscreen controller. If there is a feature which has not yet been implemented and which
A micro crate that simplifies a bit the use of the std macro thread_local!.
with-thread-local A micro crate that simplifies a bit the use of the std macro thread_local!. extern crate regex; use with_thread_local::with_thread_
A library to provide abstractions to access common utilities when developing Dioxus applications.
๐งฐ Dioxus Standard Library ๐ A platform agnostic library for supercharging your productivity with Dioxus. dioxus-std is a Dioxus standard library tha
Low level access to processors using the AArch64 execution state.
aarch64-cpu Low level access to processors using the AArch64 execution state. Usage Please note that for using this crate's register definitions (as p
A minimal and fast zero-copy parser for the PE32+ file format.
peview A minimal and fast zero-copy parser for the PE32+ file format. Goal This project aims to offer a more light weight and easier to use alternativ
implementations of standard library components for bare-metal aarch64
aarch64-std aarch64-std implements components from the Rust standard library in a way suitable for no_std or bare metal ARM applications. Design Goals
Allocation-free UnionFind library for bare metal environments
Allocation-free UnionFind library for bare metal environments The library provides the following algorithms that is used with UnionFind. QuickFind Qui
A tiny Rust std-lib for Linux x86_64 and aarch64
Tiny std Like a bad, probably buggy, tiny standard library for Linux. When it's appropriate If you are actually trying to do something solid, checkout
Low-level CPU and register abstractions for the N64 console
Description This crate is a low-level abstraction (aka a Peripheral Access Crate) over the CPU and memory-mapped registers available on the Nintendo 6
Custom formatting for Rust.
custom-format This crate extends the standard formatting syntax with custom format specifiers, by providing custom formatting macros. It uses : (a spa
A no-std / no-alloc TLS 1.3 client
puny-tls - no-std/no-alloc TLS 1.3 client This is an improvement over tiny-tls-rs to make it more useable. However the only reason this exists is to r
๐ WIP: Yet another implementation of MikanOS for aarch64 CPUs, written in Rust.
๐ mikan Yet another implementation of MikanOS for aarch64 CPUs, written in Rust. MikanOS (uchan-nos/mikanos) was originally created by @uchan-nos, wh
๐คฉ Flexible interpreted programming language
Jel Flexible, memory-safe, easy-to-use, interpreted programming language. work in progress Example Hello World: print(Hello World!) # this is valid pr
Rust High Performance compile-time ORM(RBSON based)
WebSite | ็ฎไฝไธญๆ | Showcase | ๆกไพ A highly Performant,Safe,Dynamic SQL(Compile time) ORM framework written in Rust, inspired by Mybatis and MybatisPlus.
Simple time handling in Rust
time Documentation: latest release main branch book Minimum Rust version policy The time crate is guaranteed to compile with any release of rustc from
A Rust library to manipulate AArch64 VMSA EL1 page tables.
aarch64 page table manipulation This crate provides a library to manipulate EL1 page tables conforming to the AArch64 Virtual Memory System Architectu
A simple MD5 implementation with a focus on buffered reading
md5-rs A simple MD5 implementation with a focus on buffered reading, and is completely no_std. This shouldn't be used in any security-critical softwar
An unofficial and incomplete no_std Rust library for implementing the ElectricUI Binary Protocol
An unofficial and incomplete no_std Rust library for implementing the ElectricUI Binary Protocol
dark-std an Implementation of asynchronous containers build on tokio
dark-std dark-std is an Implementation of asynchronous containers build on tokio. It uses a read-write separation design borrowed from Golang SyncHash
An attempt to implement equivalent of C++ "P1478R1: Byte-wise atomic memcpy" in Rust
atomic-memcpy Byte-wise atomic memcpy. This is an attempt to implement equivalent of C++ "P1478R1: Byte-wise atomic memcpy" in Rust. This is expected
Portable atomic types.
portable-atomic Portable atomic types. Provide all atomic integer types (Atomic{I,U}{8,16,32,64}) for all targets that can use atomic CAS. (i.e., all
A bit vector with the Rust standard library's portable SIMD API
bitsvec A bit vector with the Rust standard library's portable SIMD API Usage Add bitsvec to Cargo.toml: bitsvec = "x.y.z" Write some code like this:
A thin-hypervisor that runs on aarch64 CPUs.
How to build the hypervisor By Rust toolchain (TBD) By docker Requirements Docker (Tested by Docker version 20.10.8, build 3967b7d28e) I tested by non
A concurrency framework for building real-time systems
Real-Time Interrupt-driven Concurrency A concurrency framework for building real-time systems. Formerly known as Real-Time For the Masses. Features Ta
How to: Run Rust code on your NVIDIA GPU
Status This documentation about an unstable feature is UNMAINTAINED and was written over a year ago. Things may have drastically changed since then; r
Extent - replacement for std::ops::{Range,RangeInclusive}
extent This is an alternative to std::ops::{Range,RangeInclusive}, avoiding the quirks of those types (non-Copy, inability to produce empty inclusive
Additional Rust collections not found in std::collections
More collections Rust crate with additional collections not found in std::collections. Multimaps Completion Name Behaves like ๐ฉ ๐ฉ ๐จ โฌ๏ธ โฌ๏ธ HashSetMu
Cross-platform async library for system information fetching ๐ฆ
heim Cross-platform library for system information fetching heim is an ongoing attempt to create the best tool for system information fetching (ex., C
๐ An async & dynamic ORM for Rust
SeaORM ๐ An async & dynamic ORM for Rust SeaORM SeaORM is a relational ORM to help you build web services in Rust with the familiarity of dynamic lan
Portable linked-list allocator designed for baremetal systems
Palloc Portable linked-list allocator for embedded / baremetal systems. Using the crate Include this in the [dependencies] section of Cargo.toml pallo
A Rust no-std (de)compressor based on PAQ
MASHI ใพใ A 100% no-std compatible Rust implementation of a PAQ style arithmetic coding, context mixing compressor. Its intended use case is compressin
std::simd implementation of BLAKE3
BLAKE3-STD the first blake3 implementation on std::simd ONLY COMPILES WITH NIGHTLY [dependencies] blake3-std = "0.0.1" OFFICIAL DOC BLAKE3 is a crypto
โจ Safe, global singletons initialized at program start
โจ magic_static Safe, global singletons initialized at program start. Usage Simply add magic_static as a dependency in your Cargo.toml to get started:
Gossip-based cluster membership discovery (SWIM)
Foca: Cluster membership discovery on your terms Foca is a building block for your gossip-based cluster discovery. It's a small no_std + alloc crate t
single file, std only, async Rust executor
whorl - A single file, std only, async Rust executor whorl was created to teach you how async executors work in Rust. It is not the fastest executor n
Rust seL4 toy system built on ferros for the imx6 sabrelite platform
Rust seL4 toy system built on ferros for the imx6 sabrelite platform ferros: A Rust-based userland which also adds compile-time assurances to seL4 dev
argmax is a library that allows Rust applications to avoid Argument list too long errors (E2BIG) by providing a std::process::Command wrapper with a
argmax argmax is a library that allows Rust applications to avoid Argument list too long errors (E2BIG) by providing a std::process::Command wrapper w
Rust on ESP32 STD "Hello, World" app. A "Hello, world!" STD binary crate for the ESP32[XX] and ESP-IDF.
Rust on ESP32 STD "Hello, World" app A "Hello, world!" STD binary crate for the ESP32[XX] and ESP-IDF. This is the crate you get when running cargo ne
An extension to Rust std for beginner exercises
note: this is for practicing rust only, do not use this in actual production programs! really, don't. [dependencies] simple-std = "0.1.1" simple-std i
Learn to write an embedded OS in Rust
Operating System development tutorials in Rust on the Raspberry Pi
Utility library to work with tuples.
Utility library to work with tuples.
Serde is a framework for serializing and deserializing Rust data structures efficiently and generically.
Serde is a framework for serializing and deserializing Rust data structures efficiently and generically.
Debug2 is a pretty printing crate based on std::fmt
debug2 is a pretty printing crate based on std::fmt Why not just use Debug The Debug trait is good, but the problem is it is not very good at n
Totally Speedy Transmute (TST) is a library providing a small, performance oriented, safe version of std::mem::transmute
Totally Speedy Transmute An evil spiritual successor to Totally Safe Transmute What is it? Totally Speedy Transmute (TST) is a library providing a sma
Padding/aligning values without heap allocation
zero-copy-pads Padding/aligning values without heap allocation. Cargo Features std (default feature): Disable #![no_std]. Enable features that require
Cassette A simple, single-future, non-blocking executor intended for building state machines.
Cassette A simple, single-future, non-blocking executor intended for building state machines. Designed to be no-std and embedded friendly. This execut
Rhai - An embedded scripting language for Rust.
Rhai is an embedded scripting language and evaluation engine for Rust that gives a safe and easy way to add scripting to any application.
C++ `std::unique_ptr` that represents each object as an NFT on the Ethereum blockchain
C++ `std::unique_ptr` that represents each object as an NFT on the Ethereum blockchain
Operating System development tutorials in Rust on the Raspberry Pi
Operating System development tutorials in Rust on the Raspberry Pi
Binja Arm64 Disassembler
Binja Arm64 Disassembler These are bindings to the Binary Ninja arm64 architecture/disassembler plugin. Note that while Binary Ninja is an (excellent)
Rhai - An embedded scripting language for Rust.
Rhai - Embedded Scripting for Rust Rhai is an embedded scripting language and evaluation engine for Rust that gives a safe and easy way to add scripti
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
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