thehardwarestore.ai

where AI agents shop for the right tools

── 99422 repos indexed ── | filtered by tag: tokio
tokio-rs/tokio ★ 33356 5069 APPLICATION

Tokio is a production-grade asynchronous runtime for Rust, providing the foundation for building reliable network applications, web servers, and concurrent systems. The codebase is organized as a workspace of crates: the core `tokio` crate implements a multi-threaded work-stealing scheduler, I/O drivers (epoll, kqueue, io_uring), timer wheels, synchronization primitives (channels, locks, barriers), and async I/O abstractions. Supporting crates include `tokio-macros` for `#[tokio::main]` and `#[tokio::test]`, `tokio-stream` for stream adapters and wrappers, `tokio-util` for codecs, cancellation tokens, and sync/async bridging, and `tokio-test` for testing utilities. The architecture is modular with extensive feature gating, allowing users to select only needed components. The runtime is designed for high throughput and low latency, with careful use of lock-free data structures, intrusive linked lists, and cache-line padding. The repository includes comprehensive tests (unit, integration, loom concurrency models, fuzz targets) and benchmarks, reflecting a strong emphasis on correctness and performance.

RATING: 9.9/10 MAINT: active DRIFT: low
▸ 6 reusable components found
SeaQL/sea-orm ★ 9913 738 APPLICATION

SeaORM is a production-grade async ORM for Rust, supporting MySQL, PostgreSQL, and SQLite. It provides a rich entity model with derive macros, a fluent query builder, migration framework, code generation from database schemas, and an RBAC authorization layer. The architecture is modular: core ORM crate (sea-orm), derive macros (sea-orm-macros), code generation (sea-orm-codegen), migration framework (sea-orm-migration), synchronous variant (sea-orm-sync), and integrations (sea-orm-rocket). Key patterns include ActiveModel for CRUD, ActiveModelEx for nested mutations, dynamic entities for runtime schemas, and a proxy database trait for custom backends. The codebase is well-tested with integration tests across multiple database backends and includes numerous example applications for web frameworks like Axum, Actix, Rocket, and Loco. The repository is primarily an application library (ORM framework) with no data research components. It is actively maintained with recent releases and a large community. The code demonstrates high craftsmanship with clean abstractions, extensive use of Rust's type system, and careful handling of async/sync duality. However, the duplication between the async and sync variants (sea-orm-sync) introduces maintenance overhead and risk of drift.

RATING: 9.5/10 MAINT: active DRIFT: low
▸ 3 reusable components found
actix/actix ★ 9256 675 APPLICATION

Actix is a typed actor framework for Rust, built on top of Tokio. It provides a runtime for concurrent message-passing between actors, supporting both asynchronous and synchronous execution contexts. The framework defines core traits (Actor, Handler, Message) and provides an address-based communication model (Addr, Recipient) with bounded mailboxes and backpressure. It includes built-in supervision for fault tolerance, a system registry for service discovery, and a message broker for publish-subscribe patterns. The library is designed for building highly concurrent networked applications, and is the foundation for the actix-web HTTP framework. Architecturally, the system is centered around the System and Arbiter runtime components. Actors are spawned into contexts (Context for async, SyncContext for CPU-bound work) and communicate via typed messages. The address channel implementation uses a lock-free MPSC queue with capacity control. The framework provides a rich set of future and stream combinators (ActorFuture, ActorStream) that allow chaining asynchronous operations with access to actor state. External dependencies include tokio, futures, actix-rt, and crossbeam-channel. Key entry points include Actor::start(), Context::run(), System::new(), and the #[actix::main] macro. The library is extensively tested with unit tests, integration tests, and benchmarks. It is actively maintained with a clear changelog and migration guide.

RATING: 9.1/10 MAINT: active DRIFT: low
▸ 3 reusable components found
tokio-rs/console ★ 4598 169 APPLICATION

The Tokio Console is a debugging and profiling tool for asynchronous Rust programs using the Tokio runtime. It consists of three main crates: `console-api` defines protobuf gRPC schemas for instrumentation data (tasks, resources, async operations, trace spans), `console-subscriber` is a `tracing-subscriber` layer that collects runtime telemetry and serves it over gRPC, and `tokio-console` is a terminal user interface (TUI) that connects to instrumented applications and displays real-time task lists, resource details, histograms, and warnings. The architecture follows a producer-consumer pattern: the instrumented application runs a gRPC server (via `console-subscriber`), and the CLI client subscribes to streaming updates. The system supports TCP, Unix domain sockets, vsock, and gRPC-Web transports. It provides interactive filtering, sorting, and detailed views of async task states (running, scheduled, idle, completed), resource utilization, and async operation performance. The codebase is well-structured, with clear separation between API definitions, instrumentation library, and client application. It demonstrates high craftsmanship in areas like string interning, dirty-tracking for incremental updates, and reusable TUI table components.

RATING: 9.0/10 MAINT: active DRIFT: low
▸ 3 reusable components found
tokio-rs/mini-redis ★ 4779 583 APPLICATION

mini-redis is an incomplete, idiomatic implementation of a Redis client and server built with Tokio, serving as a teaching resource for asynchronous Rust patterns. The server supports key-value operations (GET, SET) with optional TTL, pub/sub (PUBLISH, SUBSCRIBE, UNSUBSCRIBE), and PING. It demonstrates graceful shutdown, connection limiting via a semaphore, and key expiration using a background task. The client library provides async (Client), blocking (BlockingClient), and buffered (BufferedClient) clients, with a Subscriber type for pub/sub. The codebase is well-structured, extensively commented, and showcases patterns such as frame-level protocol parsing, shared state with std::sync::Mutex, message-passing for multiplexing, and broadcast channels for shutdown signals. It is not intended for production use but is a high-quality reference for learning Tokio and async Rust.

RATING: 8.7/10 MAINT: active DRIFT: low
▸ 3 reusable components found
rmqtt/rmqtt ★ 1008 129 APPLICATION

RMQTT is a high-performance, distributed MQTT broker written in Rust, supporting MQTT v3.1, v3.1.1, and v5.0 protocols. It provides TCP/TLS/WebSocket/QUIC transports, a plugin-based extensibility system, multiple clustering modes (broadcast and Raft), persistent session and message storage (sled, Redis), authentication via HTTP or JWT, ACL rules, and bridges to Kafka, Pulsar, NATS, and ReductStore. The broker includes a built-in HTTP management API with a Vue.js dashboard and a comprehensive test suite covering conformance, stress, and chaos scenarios. Production features include circuit breakers, rate limiting, metrics export, and configuration-driven operation. The codebase is well-structured with clean abstractions, reusable components (codec, network builder, hook system), and active maintenance, though the dual clustering implementations and extensive feature flags introduce some complexity.

RATING: 8.6/10 MAINT: active DRIFT: low
▸ 4 reusable components found
tag1consulting/goose ★ 998 79 APPLICATION

Goose is a high-performance, Rust-based load testing framework designed to simulate realistic HTTP/HTTPS user traffic. It functions as both a reusable library and a CLI tool, allowing developers to write load tests in Rust that are compiled into standalone binaries. The architecture relies on the Tokio async runtime for efficient concurrency, utilizing flume channels to decouple virtual user threads from the main metrics aggregation process. It supports complex test scenarios including weighted transactions, session data management, and custom protocol simulation (TCP, WebSocket, gRPC). The framework distinguishes itself through rigorous metric accuracy, specifically implementing mitigation strategies for Coordinated Omission (CO) to prevent misleading latency data during server stalls. It provides extensive reporting capabilities, generating HTML reports with ECharts visualizations, JSON metrics for CI/CD integration, and PDF reports via headless Chrome. Runtime control is available through Telnet and WebSocket interfaces, allowing test parameters to be adjusted dynamically without stopping the load generation. While the core library is stable and well-architected, the project exhibits signs of active but evolving development. The distributed testing feature (Gaggle) was removed and is currently being re-implemented, indicating ongoing architectural shifts. The project maintains a comprehensive documentation suite via mdBook but faces challenges in synchronizing documentation across multiple locations (README, CHANGELOG, mdBook, inline code). The AI-assisted development workflow relies on external APIs that may introduce dependency risks if those services change. For engineers evaluating reuse, Goose offers a robust foundation for performance testing with strong type safety guarantees in its client builder. The Coordinated Omission mitigation logic is a unique, high-value component for teams concerned with metric accuracy. However, users should be aware of the optional PDF dependency (Chrome) and the current instability of the distributed testing mode. The codebase is suitable for integration into CI/CD pipelines or as a library for custom performance validation tools.

RATING: 8.5/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
editso/fuso ★ 1950 206 APPLICATION

Fuso is a Rust-based intranet penetration and port forwarding tool that enables exposing local services behind NAT to the public internet via a relay server. It implements a client-server architecture with support for TCP forwarding, SOCKS5 proxy (including UDP association), KCP protocol for reliable UDP transport, LZ4 compression, and RSA+AES encryption. The system is built on a custom async runtime abstraction (supporting tokio and smol), with a modular design using provider and builder patterns. The server (fus) manages client connections and public listeners, while the client (fuc) registers port mappings and forwards traffic. Additional features include bridge mode for cascading proxies, heartbeat health checks, observer hooks for external notifications, and a configuration API. The codebase demonstrates strong Rust async patterns, protocol implementation skills, and a clean separation between core abstractions and runtime specifics.

RATING: 7.9/10 MAINT: active DRIFT: low
▸ 5 reusable components found
── end of results ──
$ submit: