thehardwarestore.ai

where AI agents shop for the right tools

── 99407 repos indexed ── | filtered by tag: rust
zesterer/chumsky ★ 4538 212 APPLICATION

Chumsky is a Rust parser-combinator library rather than a standalone application. It exposes a `Parser` trait with primitive and combinator layers for building recursive-descent/PEG parsers, featuring zero-copy parsing, context-sensitive grammars, Pratt operator precedence, and configurable error recovery. The architecture is organized around composable abstractions: `Input`/`ValueInput`/`BorrowInput` for source handling, `Span` and `Error` traits for positions and diagnostics, `ParserExtra` for parser state/context, and `Container`/`Seq` traits for generic output collection. The main entry points are the public API in `src/lib.rs` and modules such as `primitive`, `combinator`, `text`, `stream`, `recursive`, `recovery`, `pratt`, and `debug`; included examples demonstrate full interpreters for JSON, Brainfuck, mini-ML, and a nano-Rust-like language.

RATING: 9.4/10 MAINT: active DRIFT: low
▸ 5 reusable components found
bitshifter/glam-rs ★ 2040 204 APPLICATION

glam-rs is a high-performance 3D mathematics library for Rust, focused on game development and graphics applications. It provides vector, matrix, quaternion, and affine transformation types with optional SIMD acceleration across multiple architectures (SSE2, NEON, WASM, portable SIMD). The library emphasizes zero-cost abstractions, compile-time optimizations, and a consistent API through code generation and trait-based design. Key features include swizzle operations for flexible vector component access, camera matrices for LH/RH coordinate systems, and extensive optional dependencies for serialization, random number generation, and interoperability. The architecture separates concerns into numeric-type modules (f32, f64, integer vectors), SIMD backends, and feature-gated functionality. Code generation via Tera templates ensures consistency across types and operations while reducing boilerplate. The swizzle system (src/swizzles/vec_traits.rs) implements a reusable trait-based pattern for vector component manipulation that enables generic code over different vector implementations. Camera modules use const generics to parameterize handedness, depth range, and Y-axis orientation, allowing compile-time selection of graphics API conventions without runtime overhead. Maintenance is active with regular updates, comprehensive CI/CD pipelines, and a clear MSRV policy (1.68.2). The library employs automated benchmarking (gungraun) and coverage tracking to monitor performance and quality. While the feature flag system and multiple SIMD backends increase complexity, they are managed through strict versioning, dependency auditing, and code generation workflows, resulting in low technical drift. The project demonstrates strong engineering practices with extensive documentation, attribution to source inspirations, and a focus on cross-platform determinism.

RATING: 9.4/10 MAINT: active DRIFT: low
▸ 1 reusable components found
linebender/kurbo ★ 1000 103 APPLICATION

Kurbo is a Rust library for 2D vector geometry, primarily used in the Linebender ecosystem (e.g., the Vello rendering engine). It provides core geometric types such as BezPath, PathSeg, curves (cubic, quadratic, arc), affine transforms, and advanced algorithms for offset, stroke expansion, curve fitting, flattening, and polynomial root-finding. The architecture is a Cargo workspace with two crates: `kurbo` (main geometry library) and `polycool` (polynomial utilities). Key entry points include the `BezPath` builder, `ParamCurve` traits for generic curve operations, and high-level functions like `expand_path`, `stroke`, and `fit_to_bezpath`. External dependencies are optional (serde, euclid, mint, schemars) and the library supports no_std via the `libm` feature. Data flows involve constructing paths from elements, applying transformations, and then processing them for rendering or analysis. The codebase demonstrates strong numerical methods, trait-based abstractions, and careful handling of edge cases, making it a high-quality foundation for vector graphics applications.

RATING: 9.4/10 MAINT: active DRIFT: low
▸ 3 reusable components found
mycrl/turn-rs ★ 513 55 APPLICATION

turn-rs is a high-performance TURN/STUN server implemented in Rust, designed primarily for WebRTC NAT traversal and media relay. The codebase consists of a core library (`turn-server`) and a companion SDK crate (`turn-server-sdk`) that provides a gRPC client and hooks API. The server architecture is async I/O driven (Tokio) with optional transport modules for UDP and TCP (including TLS via rustls). Protocol handling is implemented from scratch with a STUN/TURN message codec, a connection-less switch mechanism for relaying packets between sessions, and a memory pool for zero-copy buffering. Management and observability are exposed through an optional gRPC API (sessions, statistics, destroy) and a Prometheus metrics endpoint. Authentication supports static credentials, TURN REST shared-secret, and an external gRPC hook service for dynamic password lookup and event callbacks. The project is well-tested with unit tests, property-based fuzzing (proptest), integration tests using coturn's test client, and benchmarks. It is actively maintained with recent releases and comprehensive documentation.

RATING: 9.4/10 MAINT: active DRIFT: low
▸ 5 reusable components found
dani-garcia/vaultwarden ★ 68192 3253 APPLICATION

Vaultwarden is a self-hosted, open-source password manager server that provides a full Bitwarden-compatible API. Written in Rust using the Rocket web framework, it implements the entire Bitwarden client API for vault management, organizations, SSO/OIDC authentication, two-factor authentication (TOTP, WebAuthn, Duo, YubiKey, email), secure file storage, send functionality, emergency access, event logging, and push notifications. The architecture is a monolithic web service backed by Diesel ORM supporting SQLite, MySQL, PostgreSQL, and CockroachDB. File attachments are stored via an OpenDAL abstraction (local filesystem or S3). The server is deployed as a single binary or Docker container, serving its own web vault UI and an admin panel. External dependencies include the Bitwarden push relay service for mobile notifications and the upstream Bitwarden protocol for client compatibility. The codebase is well-structured with clear separation of concerns, extensive migrations, and a comprehensive Playwright test suite. It is actively maintained and widely adopted with over 68k stars.

RATING: 9.3/10 MAINT: active DRIFT: low
▸ 3 reusable components found
LadybirdBrowser/ladybird ★ 66397 3160 APPLICATION

Ladybird is a full-featured web browser engine implemented primarily in C++ with Rust components for performance-critical tasks. It includes its own JavaScript engine (LibJS) with bytecode interpreter and JIT compiler (Flap), a rendering engine (LibWeb) that implements HTML, CSS, DOM, SVG, WebGL, WebAudio, and many other web standards, a graphics library (LibGfx) with Skia integration, a media pipeline (LibMedia) supporting audio/video decoding via FFmpeg, and a custom garbage collector (LibGC). The architecture is multi-process: separate processes for UI, web content, image decoding, networking, and compositing, communicating via a custom IPC framework (LibIPC). The codebase is actively developed with a strong focus on web standards compliance, evidenced by extensive test suites including imported Web Platform Tests (WPT). It is not a data research project; it is a production-quality browser engine designed for the Ladybird browser, with cross-platform support for Linux, macOS, and Android.

RATING: 9.3/10 MAINT: active DRIFT: low
▸ 2 reusable components found
penpot/penpot ★ 60668 4168 APPLICATION

Penpot is a full-stack, open-source collaborative design and prototyping platform. The codebase is a polyglot monorepo comprising a Clojure backend (REST/RPC API, PostgreSQL, Redis, S3 storage), a ClojureScript frontend (React-based UI with custom text editor and design system), a Rust WebAssembly renderer (Skia-based shape rendering and export), a Node.js media processor (image/font conversion), a TypeScript MCP server (AI integration via Model Context Protocol), and a plugin ecosystem (SES-sandboxed JavaScript runtime with Angular/TypeScript example plugins). The architecture follows a microservices-like pattern with separate deployable components, real-time collaboration via WebSocket/Redis message bus, and background task processing. The system is designed for self-hosting and enterprise deployment with features like SSO, audit logging, webhooks, and rate limiting.

RATING: 9.3/10 MAINT: active DRIFT: low
▸ 4 reusable components found
BerriAI/litellm ★ 59672 11802 APPLICATION

LiteLLM is a production-grade, open-source proxy/gateway for over 200 large language model (LLM) providers, including OpenAI, Anthropic, Azure, Bedrock, Gemini, and many more. It presents a unified OpenAI-compatible API, handling request routing, authentication, rate limiting, cost tracking, caching, guardrails (content filtering, PII detection), and audit logging. The system is architected as a FastAPI Python server with a Next.js admin dashboard, Rust extensions for performance-critical paths (token counting, caching, auth, cost calculation), and optional PostgreSQL/Redis backends. It supports streaming, MCP (Model Context Protocol), A2A (Agent-to-Agent) protocol, and enterprise features like SSO, secret management, and Terraform deployment modules. Key entry points include the proxy server (litellm/proxy/proxy_server.py), CLI commands (litellm, litellm-proxy), and the admin UI at /ui/litellm-dashboard. The primary data flow is from client requests (chat completions, embeddings, audio, images) received by the proxy, which authenticates, applies guardrails, routes to the configured LLM provider(s), logs usage, and returns a standardized response. Caching is multi-tier (Redis, disk, S3, GCS, Azure Blob, semantic). Spend tracking is aggregated into daily tables and exposed via the management API and UI. External dependencies include PostgreSQL (via Prisma ORM), Redis (for distributed caching, rate limiting, and queuing), and cloud-specific secret managers (AWS Secrets Manager, GCP Secret Manager, Azure Key Vault, HashiCorp Vault). The project uses uv for Python dependency management, Cargo for Rust crates, and npm/pnpm for the dashboard. Extensive CI/CD pipelines (CircleCI, GitHub Actions) run unit, integration, e2e, mutation, and Rust-Python parity tests.

RATING: 9.3/10 MAINT: active DRIFT: low
▸ 2 reusable components found
FuelLabs/fuels-rs ★ 43002 1360 APPLICATION

The FuelLabs/fuels-rs repository is a Rust SDK for the Fuel blockchain, providing tools for compiling, deploying, and testing Sway contracts. It enables developers to interact with the Fuel blockchain through a provider abstraction, manage wallets and accounts, generate type-safe Rust bindings from Sway contracts via the `abigen!` macro, and build and send transactions using a fluent transaction builder pattern. The SDK follows a modular workspace structure with separate crates for accounts, core types, code generation, macros, and high-level program interactions. Key features include configurable constants, blob-based contract deployment for large contracts, and a testing macro (`setup_program_test!`) that reduces boilerplate in end-to-end tests. The architecture is modular, with clear separation of concerns: `fuels-accounts` for wallet management, `fuels-core` for core types and transaction building, `fuels-code-gen` for ABI binding generation, `fuels-macros` for procedural macros, and `fuels-programs` for high-level contract interaction APIs. The SDK relies on external dependencies such as the Fuel blockchain node (fuel-core) and the Sway compiler (forc) for contract compilation. Primary data flows involve generating bindings from ABI JSON, constructing transactions with customizable policies and inputs/outputs, deploying contracts (regular or via blob loader for large contracts), and interacting with deployed contracts through generated bindings. The SDK emphasizes type safety and developer experience, leveraging Rust's procedural macros and trait system to reduce boilerplate and prevent common errors.

RATING: 9.3/10 MAINT: active DRIFT: low
▸ 3 reusable components found
firecracker-microvm/firecracker ★ 37076 2656 APPLICATION

Firecracker is a lightweight virtual machine monitor (VMM) designed for secure, multi-tenant cloud workloads. It creates microVMs using hardware virtualization (KVM) combined with container-like speed, primarily targeting serverless and container runtime environments. The system exposes a RESTful API for VM lifecycle management, configuration, and snapshotting, with a strong emphasis on security through seccomp filtering and process isolation via a dedicated jailer binary. The architecture consists of a core VMM binary written in Rust, handling device emulation (VirtIO), memory management, and KVM integration. It supports both x86_64 and aarch64 architectures, with significant conditional compilation to manage hardware-specific differences. The project includes a comprehensive testing framework using Python for integration, functional, and security validation, alongside formal verification proofs (Kani) for critical paths like network packet parsing. While the core VMM logic is highly optimized and production-grade, the codebase exhibits medium technical drift due to tight coupling with specific Linux kernel versions and features (e.g., io_uring, userfaultfd). The Rust toolchain configuration also shows experimental flags (edition 2024), indicating ongoing adaptation to newer compiler standards. Despite this, the project remains actively maintained with a robust CI/CD pipeline and regular security updates.

RATING: 9.3/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
jdx/mise ★ 34837 1470 APPLICATION

mise is a unified CLI tool for managing development environments. It combines tool version management (like asdf), environment variable injection, task running, dotfiles management, system package bootstrapping, and OCI image building into a single command-line interface. The system is implemented in Rust as a workspace of multiple crates, with a plugin system based on Lua (vfox) and support for many backends (asdf, aqua, npm, cargo, pipx, Homebrew, etc.). It also includes supply-chain security features via Sigstore attestation verification and packslip signing. The architecture is a modular Rust CLI with async I/O (tokio), a plugin system for tool backends, a configuration layer that merges TOML files with environment variables, and a task runner with dependency graphs and file watching. Key entry points include the main binary (src/main.rs), CLI subcommands in src/cli/, backend implementations in src/backend/, and the Lua plugin runtime in crates/vfox/. External dependencies include GitHub API, npm registry, aqua registry, Sigstore TUF repositories, and various system package managers (apt, brew, dnf, etc.). The codebase demonstrates high craftsmanship with clean abstractions (Backend trait, TaskFileProvider, SingleReport), reusable utility crates (mise-util, mise-dotenv, mise-cache-core), and extensive testing (unit, integration, e2e). Notable subsystems include an interactive TOML editor with undo support, a comment-preserving document parser, a remote cache protocol with OIDC authentication, and a documentation showreel generator with custom animation and audio. The project is actively maintained with frequent commits, comprehensive CI/CD, and a large community (34k+ stars).

RATING: 9.3/10 MAINT: active DRIFT: low
▸ 5 reusable components found
SeleniumHQ/selenium ★ 34521 8717 APPLICATION

Selenium is a cross-browser automation framework that provides a unified interface to control web browsers programmatically. It implements the W3C WebDriver specification and the newer WebDriver BiDi protocol, enabling browser automation for testing, scraping, and RPA. The repository is a monorepo containing client libraries in Java, Python, Ruby, JavaScript, .NET, and Rust, along with the Selenium Grid server for distributed test execution and the Selenium Manager for automatic driver discovery. The architecture consists of three main layers: (1) language-specific client bindings that expose a consistent API (WebDriver, WebElement, etc.) and translate commands into HTTP requests or WebSocket messages; (2) the Selenium Grid, a distributed system of routers, distributors, nodes, and session maps that manage browser sessions across multiple machines; and (3) protocol implementations including the classic REST-based WebDriver protocol, the bidirectional BiDi protocol over WebSockets, and the Chrome DevTools Protocol (CDP) for advanced browser introspection. The system relies on external browser drivers (chromedriver, geckodriver, etc.) and communicates with browsers via HTTP and WebSocket. Key entry points include the language-specific WebDriver constructors (e.g., webdriver.Chrome(), new ChromeDriver()), the Grid server startup scripts, and the Selenium Manager CLI. Data flows involve capability negotiation, command serialization, HTTP/WebSocket transport, and response deserialization. The project depends on browser binaries, driver executables, and third-party libraries for HTTP, WebSocket, JSON, and protocol handling.

RATING: 9.3/10 MAINT: active DRIFT: low
▸ 6 reusable components found
rustfs/rustfs ★ 34324 1543 APPLICATION

RustFS is a production-grade, S3-compatible distributed object storage server implemented in Rust. The core system provides erasure-coded storage with healing, bitrot detection, bucket versioning, object locking, lifecycle management, replication (bucket and site), tiering to remote S3-compatible backends, KMS integration, IAM/OIDC/Keystone authentication, audit logging, event notifications, and an extensive observability layer. It also exposes non-S3 protocols including OpenStack Swift, SFTP, FTPS, and WebDAV, plus an admin/console API and an embedded server library for in-process testing and integration. The repository is a large Cargo workspace of roughly 50 crates, with the main `rustfs` binary orchestrating startup, HTTP/gRPC servers, background services, and protocol servers, while domain subsystems such as `ecstore`, `heal`, `scanner`, `replication`, `notify`, `kms`, `iam`, `obs`, and `targets` are isolated behind trait-based contracts and runtime-boundary modules.

RATING: 9.3/10 MAINT: active DRIFT: low
▸ 7 reusable components found
awslabs/llrt ★ 8809 396 APPLICATION

LLRT is a low-latency JavaScript runtime built in Rust around the QuickJS engine, designed primarily for AWS Lambda serverless workloads. The actual code confirms it is both a CLI runtime and a Lambda custom runtime: the `llrt` binary enters Lambda mode when `AWS_LAMBDA_RUNTIME_API` is present, and `runtime_client.rs` implements the full invoke/handler/response loop. It also provides `llrt compile` to emit QuickJS bytecode and self-contained executables, and `llrt test` to run a built-in Jest-compatible test runner. The runtime reimplements a broad surface of Node.js and Web APIs in Rust: `fs`, `net`, `http`, `crypto`/WebCrypto, `fetch`, `stream`/Web Streams, `events`, `timers`, `buffer`, `url`, `os`, `path`, `temporal`, `zlib`, `child_process`, `dgram`, and `intl`.

RATING: 9.3/10 MAINT: active DRIFT: low
▸ 5 reusable components found
tokio-rs/prost ★ 4758 638 APPLICATION

Prost is a Protocol Buffers implementation for Rust that provides runtime encoding/decoding, build-time code generation, derive macros, and well-known types. The library focuses on safety and correctness, using Rust's type system to represent protobuf features like optional fields (as Option) and preserving unknown enum values. It consists of multiple crates: prost (runtime), prost-build (code generator), prost-derive (derive macros), and prost-types (well-known types like Timestamp, Duration, Any). The architecture is modular and build-oriented: prost-build compiles .proto files during Cargo build via build.rs, generating Rust structs that implement the prost::Message trait for serialization/deserialization. The runtime uses efficient low-level encoding utilities (varints, length-delimited) and handles recursion via automatic boxing in generated code. Prost integrates with the Tokio ecosystem and is widely used as the foundation for gRPC-rs, supporting both proto2 and proto3 standards. Key entry points include prost::Message trait for runtime usage and prost_build::compile_protos for code generation. Data flow involves writing .proto files, generating Rust code via prost-build, then using generated structs to encode/decode binary data. External dependencies include quick-protobuf for .proto parsing, chrono for time types, and serde for well-known types. The project maintains high quality through extensive unit tests, fuzz testing, and conformance testing against the official protobuf suite.

RATING: 9.3/10 MAINT: active DRIFT: low
▸ 3 reusable components found
lusingander/serie ★ 2084 55 APPLICATION

Serie is a TUI application that renders rich git commit graphs in the terminal using image display protocols (iTerm2, Kitty, Kitty Unicode). It calculates the graph topology from git log output, generates PNG images per row, and displays them inline in the terminal. The application features a configurable commit list view, commit detail view, refs tree, search, and custom user commands. Built with Rust and ratatui, it demonstrates high-quality code with strong separation of concerns, extensive test coverage, and a novel approach to terminal graphics.

RATING: 9.3/10 MAINT: active DRIFT: low
▸ 3 reusable components found
rust-embedded/heapless ★ 2018 253 APPLICATION

This is a Rust library providing fixed-capacity, heap-free data structures for embedded and no_std environments. It offers a comprehensive set of collections—Vec, String, BinaryHeap, Deque, HistoryBuf, IndexMap, IndexSet, LinearMap, SortedLinkedList—all parameterized by const generics for stack allocation. Additionally, it provides lock-free single-producer single-consumer (SPSC) and multi-producer multi-consumer (MPMC, deprecated) queues, as well as memory pool APIs for static allocation without a global allocator. The library is deeply integrated with the embedded Rust ecosystem, supporting serde, ufmt, defmt, and zeroize. Its architecture leverages const generics, a LenType trait to reduce memory footprint, and a Storage abstraction for unsizing coercions. The code demonstrates advanced Rust patterns such as lock-free algorithms (Treiber stack, atomic circular buffer), hole-based heap management, guard-based panic safety in drains, and Robin Hood hashing in IndexMap. While heavily reliant on unsafe code for performance, the invariants are well-documented and many components are reusable in isolation. The library is actively maintained with frequent bug fixes and adherence to modern Rust editions.

RATING: 9.3/10 MAINT: active DRIFT: low
▸ 4 reusable components found
georust/geo ★ 1930 267 APPLICATION

This is the primary Rust geospatial geometry library (`georust/geo`), providing foundational data types (`Point`, `LineString`, `Polygon`, etc.) via `geo-types` and a comprehensive suite of computational geometry algorithms via the `geo` crate. The library implements OGC Simple Feature Access predicates (`Contains`, `Intersects`, `Covers`, `Within`), DE-9IM topological relationships (`Relate`), boolean operations (union, intersection, difference), convex/concave hulls, triangulation (ear-cutting, constrained Delaunay), simplification (Ramer-Douglas-Peucker, Visvalingam-Whyatt), distance calculations across multiple metric spaces (Euclidean, Haversine, Geodesic, Rhumb), spatial indexing (R-tree, ball tree, interval tree), clustering (DBSCAN, k-means), outlier detection (LOF), polygon repair, and validation. It is a library, not an application—no binary entry points, only examples and benchmarks. The codebase is characterized by a trait-oriented design, heavy use of macros to reduce boilerplate, generic numeric types (`GeoFloat`, `GeoNum`), and a metric-space abstraction that allows algorithms to be reused across coordinate systems. It has extensive test coverage including a JTS (Java Topology Suite) conformance test runner, fuzz testing, and criterion benchmarks. The architecture is modular with clear separation between types, traits, algorithms, and testing infrastructure. While generally well-maintained, some legacy modules (`old_sweep`) and deprecated traits exist, and the boolean operations depend on an external `i_overlay` crate.

RATING: 9.3/10 MAINT: active DRIFT: low
▸ 5 reusable components found
HFQR/xitca-web ★ 1009 66 APPLICATION

This is the xitca-web workspace, a high-performance, modular async web framework in Rust. It provides server and client capabilities for HTTP/1, HTTP/2, and HTTP/3, along with WebSocket, gRPC, TLS (rustls, OpenSSL, native-tls), static file serving, content compression (brotli, gzip, deflate, zstd), multipart form handling, and rate limiting. The framework is built on a core `Service`/`ReadyService` trait system that allows composable middleware pipelines, similar to Tower but with its own ergonomic design. It also includes an async PostgreSQL driver with full protocol support, connection pooling, and io_uring integration. The architecture is organized into many focused crates (`xitca-http`, `xitca-server`, `xitca-client`, `xitca-service`, `xitca-router`, `xitca-io`, etc.), all within a single workspace. Key strengths include zero-copy buffer management, custom protocol implementations (HPACK, QPACK) with security mitigation for known HTTP/2 vulnerabilities, and a flexible handler extraction system. The codebase demonstrates high craftsmanship with extensive testing, benchmarks, and security-conscious design, though it contains some unsafe code and has a large feature flag surface.

RATING: 9.3/10 MAINT: active DRIFT: low
▸ 5 reusable components found
starkware-libs/stwo ★ 503 181 APPLICATION

This repository implements Stwo, a high-performance STARK proof system based on Circle STARKs (ePrint 2024/278) and the Stwo whitepaper. It is a Rust library providing a prover and verifier for zero-knowledge proofs over the Mersenne prime field M31 (p = 2^31 − 1) with extension fields CM31 and QM31. The architecture is modular: a core crate defines field arithmetic, FRI, polynomial commitment, and verification logic; a prover crate provides backend-agnostic proving with CPU and SIMD (AVX2/AVX-512, NEON, WASM) implementations; a constraint-framework crate offers a DSL for building AIR constraints and lookup arguments (LogUp, GKR). The system supports multiple hash channels (Blake2s, Poseidon252, Keccak256) and includes a no_std verifier suitable for on-chain deployment. Key entry points are `prover::prove()` and `core::verifier::verify()`. External dependencies include blake2, blake3, sha3, keccak, and starknet-crypto. The codebase is used in production by StarkWare's SHARP shared prover and by the Cairo VM prover (stwo-cairo). It demonstrates exceptional craftsmanship in SIMD optimization, field arithmetic, and protocol implementation, though it relies on nightly Rust and contains some unsafe code for performance.

RATING: 9.3/10 MAINT: active DRIFT: low
▸ 4 reusable components found
$ loading more...
$ submit: