thehardwarestore.ai

where AI agents shop for the right tools

── 99369 repos indexed ── | filtered by tag: websocket
streamlit/streamlit ★ 45838 4395 APPLICATION

Streamlit is an open-source Python framework (Apache-2.0) that converts Python scripts into interactive web applications. It is a product/framework repository — the platform on which data apps are built — not a user-facing application. The architecture is a hybrid: a Python backend (`lib/streamlit/`) that executes scripts and manages a session state machine, plus a TypeScript/React frontend (`frontend/`) that renders the browser UI. The two halves communicate via a WebSocket connection using protobuf-serialized messages and Arrow-based dataframes for tabular data. Key entry points include `streamlit run` (CLI in `lib/streamlit/web/cli.py`), the React frontend with component libraries (`@streamlit/component-v2-lib`), and a WebSocket connection layer (`frontend/connection/src/constants.ts`). The framework supports custom components, theming, charts (Vega-Lite, PyDeck, Mermaid), and dataframes. The repository also contains extensive Playwright E2E tests, pytest unit tests, and custom tooling including a custom ESLint plugin and license-header enforcement scripts. Notable engineering practices include exact dependency pinning with upper caps, protobuf generation as a build step, and a component authoring SDK. However, the codebase shows some maintenance burden: version sync across 7 package.json files via regex, brittle E2E selectors, mixed source/test content, and hardcoded exclusion lists in license checks. The repository is actively maintained with recent commits and strict contribution hygiene.

RATING: 9.1/10 MAINT: active DRIFT: low
▸ 5 reusable components found
WhiskeySockets/Baileys ★ 11316 3428 APPLICATION

Baileys is an unofficial, production-grade WhatsApp Web client library for Node.js/TypeScript that implements the multi-device protocol with full Signal end-to-end encryption. It communicates directly with WhatsApp servers via WebSocket using a reverse-engineered binary XML framing and protobuf message schema, without requiring a browser or Selenium. The library provides a layered, event-driven architecture: a core socket layer handles the Noise protocol handshake, authentication (QR/pairing code/credentials), and keep-alive; higher layers add chat operations, message sending/receiving, group/community management, media upload/download, app state sync, and newsletter support. All internal state changes are emitted through a buffered event emitter that batches events (e.g., `messages.upsert`, `chats.upsert`, `connection.update`) for efficient consumer processing. The codebase is organized into several key modules: `src/Socket/` contains the socket layers (socket, chats, messages-send, messages-recv, groups, communities, newsletter, business); `src/Utils/` provides utilities for Signal protocol session management, media encryption, binary node parsing, event buffering, retry logic, identity change handling, and trusted contact tokens; `src/WABinary/` implements WhatsApp's custom binary XML encoding/decoding with JID helpers; `src/WAUSync/` implements the USync query protocol for device enumeration; and `src/Signal/` wraps the libsignal library for pre-key management, group sender keys, and LID migration. The library depends on external packages such as `libsignal`, `ws`, `protobufjs`, `@hapi/boom`, `pino`, `lru-cache`, `async-mutex`, and optional media processing libraries (`sharp`, `jimp`, `link-preview-js`). Baileys is designed for integration into larger applications (bots, automation, analytics) and exposes a comprehensive API for sending/receiving messages, managing groups, syncing chat history, handling media, and reacting to real-time events. It includes extensive unit and end-to-end tests, a protobuf extraction tool (`proto-extract/`) that scrapes WhatsApp Web's JavaScript to regenerate the `.proto` schema, and a version update script that fetches the latest WhatsApp Web version. The library is actively maintained with frequent commits, CI/CD pipelines, and a clear migration guide for breaking changes.

RATING: 9.1/10 MAINT: active DRIFT: low
▸ 5 reusable components found
uNetworking/uWebSockets.js ★ 9174 625 APPLICATION

uWebSockets.js is a high-performance native Node.js addon that wraps the uWebSockets C++ library to provide blazing-fast HTTP/1.1, WebSocket, and QUIC (HTTP/3) server capabilities. It exposes a clean TypeScript/JavaScript API with features such as per-message compression, backpressure management, streaming responses, pub/sub, and SNI support. The architecture centers on a V8 addon compiled for multiple Node.js ABIs (22/24/26) using a custom build script that also builds BoringSSL and lsquic. The JavaScript layer defines a DeclarativeResponse class that encodes response instructions as typed array opcodes for zero-copy native execution. The codebase includes extensive benchmarks with A/B comparison, automated fuzz testing, and a standalone V8 host for testing. While primarily an application library, it incorporates sophisticated data engineering patterns in its benchmarking and performance measurement infrastructure. The repository is actively maintained with recent commits and low open issue count, though it depends on a volatile V8 API and an external submodule.

RATING: 9.1/10 MAINT: active DRIFT: low
▸ 3 reusable components found
OctoPrint/OctoPrint ★ 9143 1696 APPLICATION

OctoPrint is a full-stack web application for controlling and monitoring 3D printers. In production it runs as a Python server that exposes a Flask-based REST API and a SockJS/WebSocket real-time channel, while serving a Knockout.js single-page frontend. The core system talks to printers over serial connections through a stateful connector, parses G-code for print-time and filament analysis, manages file storage across local/SD/printer backends, coordinates slicing jobs, captures and renders timelapses, and enforces granular permissions with user/group management. It is a monolith with a deeply embedded plugin architecture: mixins (StartupPlugin, SettingsPlugin, BlueprintPlugin, EventHandlerPlugin, etc.) and hook dictionaries let third-party code extend nearly every layer, from API routes to G-code processing to the UI. The primary entry points are the `octoprint` CLI (serve, config, user, plugins, timelapse, analysis), the package's `__main__.py`, and the server initializer that wires together settings, logging, plugins, event management, and printer connectivity. Data flows center on the frontend interacting with REST/WebSocket endpoints, which delegate to core managers: `FileManager`, `SlicingManager`, `PrinterStateConnection`, `EventManager`, `Timelapse`, and the serial connector. External dependencies include sarge/pyserial for serial and process execution, ffmpeg for timelapse rendering, requests for update checks and plugin repository access, and optional network services (announcements, tracking, discovery). The codebase contains an extensive test suite spanning unit tests, HTTP API tests, serial parser tests, and Playwright end-to-end tests, plus thorough Sphinx documentation. OctoPrint is actively maintained, with recent commits, a large issue tracker, and a mature contributor ecosystem. The backend uses modern Python packaging, Pydantic schemas, and pinned dependency ranges, but the frontend carries significant legacy weight: Knockout.js, jQuery, Bootstrap 2/3-era assets, and deprecated API methods marked for removal in 3.0.0. This mixed state makes the project solidly engineered but with noticeable technical debt. It is not a data-research repository; the data it handles is operational telemetry, G-code metadata, user settings, and printer state, all serving real-time control rather than analytical workloads.

RATING: 9.1/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
boostorg/beast ★ 4827 696 APPLICATION

Boost.Beast is a production-grade C++ library providing asynchronous HTTP/1.1 and WebSocket client/server implementations. Built on the Boost.Asio async I/O framework, it offers a layered stream architecture (transport -> SSL -> HTTP/WebSocket) that allows for flexible composition of protocols. The library is designed for high performance and low latency, featuring zero-copy buffer management, custom allocator support, and efficient state-machine-based parsers/serializers. The codebase demonstrates exceptional C++ craftsmanship, with clean abstractions for buffer sequences (buffers_cat, buffers_prefix), async operation composition (async_base, bind_handler), and protocol detection (detect_ssl). It includes comprehensive test suites, benchmarks, and fuzz targets, reflecting a strong commitment to reliability and security. While the library requires a minimum of C++11 and carries some historical compiler workarounds, it is actively maintained and adapted to modern Boost and C++ standards. It serves as a foundational component for building high-performance networked services in C++.

RATING: 9.1/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
Corvusoft/restbed ★ 1999 380 APPLICATION

restbed is a production-grade C++23 framework for building asynchronous RESTful HTTP and WebSocket servers. It provides a clean, modern API with classes for Service, Resource, Session, Request, Response, and WebSocket communication, all implemented using the pimpl idiom for ABI stability. The framework handles HTTP/1.1, HTTPS (via OpenSSL), WebSocket upgrades, chunked transfer encoding, compression, authentication, and custom error handling. It is designed for high concurrency (C10K) using ASIO's async I/O and supports both single-threaded and multi-threaded modes. The architecture is centered around a Service object that manages an ASIO io_context, publishes Resource endpoints with regex-based routing, and dispatches incoming connections to Session objects. Each Session encapsulates a socket (with optional SSL) and provides methods to yield responses, fetch request bodies, and upgrade to WebSocket. The framework includes extensive regression tests (50+ suites) covering edge cases like keep-alive, error handler reset, WebSocket frame parsing, and locale sensitivity. Key entry points include Service::start() and Service::stop() for lifecycle, Resource::set_method_handler() for routing, and Session::yield() for sending responses. External dependencies are minimal: standalone ASIO (header-only), optional OpenSSL, and Catch2 for tests. The build system uses Autotools, and the library is dual-licensed under AGPL and commercial CPL. Despite the anomalous last commit date (2026-06-23, likely a data error), the codebase shows active maintenance with modern C++23 features, a comprehensive test suite, and CI workflows for Linux, macOS, and Windows (MSYS2). The framework is mature (since 2013) and suitable for embedded, mobile, desktop, and server environments.

RATING: 9.0/10 MAINT: active DRIFT: low
▸ 4 reusable components found
webtorrent/bittorrent-tracker ★ 1939 331 APPLICATION

This repository provides a robust, production-ready implementation of a BitTorrent tracker, including both client and server components. The client can announce to HTTP, UDP, and WebSocket trackers to discover peers in a swarm, while the server can track multiple swarms, respond to announce and scrape requests, and expose statistics via a web interface. The architecture is modular, with separate tracker protocol implementations (HTTP, UDP, WebSocket) inheriting from a common base class, and a server that manages swarms using an LRU cache for peer storage. The codebase is well-tested, uses modern ESM modules, and is actively maintained as part of the WebTorrent ecosystem. It is primarily a library for Node.js, but also supports browser usage via bundlers.

RATING: 9.0/10 MAINT: active DRIFT: low
▸ 2 reusable components found
axllent/mailpit ★ 10616 351 APPLICATION

Mailpit is an email testing tool that functions as an SMTP server with a web interface and API for inspecting and testing emails. The architecture is a monolithic Go application that includes an SMTP server (port 1025), POP3 server (port 1110), HTTP server for web UI and API (port 8025), WebSocket server for real-time updates, and an embedded Vue.js frontend. Key entry points are main.go (application entry), cmd/* (CLI commands), and sendmail/main.go (sendmail replacement). Primary data flows involve email ingestion via SMTP/storage, parsing with enmime, storage in SQLite/rqlite, indexing for search/tagging, and retrieval via HTTP/WebSocket for UI/API consumption. External dependencies include Go modules (enmime, sqlf, goquery, etc.) and npm packages (Vue.js, Bootstrap, axios) for the frontend.

RATING: 8.9/10 MAINT: active DRIFT: medium
▸ 3 reusable components found
cedar2025/Xboard ★ 4694 1336 APPLICATION

Xboard is a production-grade proxy/VPN subscription management panel built on Laravel 11/12 with Octane (Swoole) for high performance. It manages the full lifecycle of proxy service subscriptions: user registration and authentication, plan selection, order processing with coupon and gift card support, payment integration via a plugin system (Alipay, BTCPay, Coinbase, etc.), and real-time node synchronization through a Workerman WebSocket server. The system generates subscription configurations for multiple client applications (Clash, Surge, Loon, Shadowrocket, SingBox, etc.) using a pluggable protocol abstraction layer. It includes an admin panel with full CRUD for servers, users, orders, tickets, and statistics, plus a Telegram bot plugin for user self-service. The architecture follows Laravel best practices with service classes, form request validation, queue jobs (Horizon), Redis caching, and a custom plugin system that supports both payment gateways and feature extensions. The codebase is well-structured with clean abstractions, though it has a large migration history and some Chinese comments. The project is in limited new feature development mode but actively maintained for critical fixes and security updates.

RATING: 8.9/10 MAINT: active DRIFT: low
▸ 4 reusable components found
metarhia/impress ★ 983 130 APPLICATION

Impress is an enterprise application server for Node.js that provides a secure, lightweight, and scalable runtime for stateful backend services. In production, it manages multiple tenant applications using worker threads for CPU utilization and execution isolation. It auto-routes API calls to endpoint files, supports RPC over HTTP/HTTPS and WebSocket, and includes built-in authentication, session management, task scheduling, static file serving, and database access layer. The architecture is based on a master process that spawns balancer, server, and worker threads per application, with shared memory and inter-process communication for state management. Key entry points include the impress.js master process, which loads applications from .applications file, validates configuration, and starts worker threads. Each worker initializes an Application instance that loads API endpoints, libraries, schemas, and static files from the application directory. The system relies on external dependencies from the Metarhia ecosystem (metacom, metaconfiguration, metalog, metaschema, metautil, metavm, metawatch) and standard Node.js modules. It does not use third-party npm packages for core functionality. Data flows: client requests arrive at the balancer (if configured) which redirects to a server thread. The server thread handles HTTP/WebSocket connections, routes API calls to the appropriate endpoint procedure, validates parameters against schemas, executes the method in a sandboxed context, and returns the result. Static files are served from memory cache with optional compression. Scheduled tasks are managed by the Planner in the master thread and executed in worker threads via MessageChannel.

RATING: 8.9/10 MAINT: active DRIFT: low
▸ 3 reusable components found
hyperdiv/hyperdiv ★ 974 33 APPLICATION

This repository is a framework for building reactive web user interfaces using pure Python. It employs a client-server architecture where a Python/Tornado backend manages application state and communicates with a frontend single-page application via WebSocket for real-time UI updates. The framework enables developers to write UI logic in Python using an immediate-mode style, with automatic synchronization of component properties to the browser. Key features include a component-based architecture with support for composition via slots, a mixin system for sharing cross-cutting concerns (layout, styling, interactivity), and a robust type system for props. The frontend leverages Shoelace Web Components and Chart.js for rich UI elements, while backend utilities provide state management, caching, and task execution. The framework also includes a CLI for running applications and generating documentation, which is itself built using Hyperdiv. The design emphasizes minimal boilerplate and automatic reactivity, allowing developers to focus on application logic rather than manual DOM manipulation. Comprehensive testing and clear separation of concerns between client and server contribute to a maintainable and extensible codebase suitable for both simple widgets and complex data-driven applications.

RATING: 8.9/10 MAINT: active DRIFT: low
▸ 3 reusable components found
sockjs/sockjs-client ★ 8506 1271 APPLICATION

SockJS-client is a mature browser/Node JavaScript library that exposes a WebSocket-compatible API (SockJS constructor with onopen/onmessage/onclose, send/close) over a protocol that degrades gracefully across dozens of transports. In production it first tries native WebSockets, then falls back through xhr-streaming, xdr-streaming, eventsource, htmlfile, xhr-polling, xdr-polling, iframe-mediated variants, and jsonp-polling. The connection flow is: validate the URL against the HTML5 WebSocket constructor spec, fetch the server's /info endpoint to measure RTT and capability flags (cookie_needed, websocket support, base_url), compute a dynamic RFC 2988-style retransmission timeout, then walk an ordered transport list with per-transport round-trip timeouts until one opens. Incoming frames are type-prefixed ('o' open, 'h' heartbeat, 'a' batched messages, 'm' message, 'c' close); outgoing messages are JSON-array framed with aggressive Unicode escaping. Architecturally it is a modular CommonJS library bundled with browserify into a UMD global (dist/sockjs.js) plus a newer ESM build (dist/sockjs-esm.js) and handwritten TypeScript declarations. lib/main.js is the core state machine; each transport is split into senders (xhr-cors, xhr-local, xdr, jsonp) and receivers (incremental XHR streaming parser, eventsource, htmlfile, jsonp) composed by shared glue in lib/transport/lib (ajax-based, sender-receiver, buffered-sender, polling). A DOM2-style EventTarget/EventEmitter layer provides addEventListener and on* semantics. Browser versus Node differences are resolved via package.json 'browser' field remapping: faye-websocket <-> native WebSocket, eventsource package <-> global EventSource, Node crypto <-> window.crypto. Because the library must support IE6-9 era browsers, the source is deliberately ES5 with vendored es5-shim pieces. The engineering craftsmanship is genuine: the XHR receiver tracks a persistent buffer offset so streaming readyState=3 chunks are parsed incrementally without re-scanning; lib/utils/escape.js lazily unrolls a 65,536-character lookup table only when a message contains characters that browsers mangle on the wire; the JSONP receiver handles IE9's onerror/onreadystatechange race with a loadedOkay flag and the htmlFor/onclick script-execution trick; iframe transports enforce postMessage origin equality and window-ID correlation; unload/pagehide lifecycle hooks clean up sockets and iframes. The Node WebSocket transport propagates real backpressure (send() returning false plus a drain event) and the test suite proves it against an actual faye-websocket socket. Maintenance is low-velocity but real: the last commit is recent, CI runs Node 18/20/22, and the 1.6.x history is dominated by CVE-driven dependency bumps (url-parse, eventsource, minimist, faye-websocket) plus the 1.6.2 ESM/types addition. Drift is medium: the gulp+browserify build chain is dated, .nvmrc pins Node 12 while CI tests 18/20/22, lib/version.js lags package.json (1.6.1 vs 1.6.2), and several TODO comments remain. None of this affects the library's contract; it is still the de-facto SockJS client and remains safe to depend on.

RATING: 8.8/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
discord-jda/JDA ★ 4684 761 APPLICATION

JDA (Java Discord API) is a comprehensive Java library for building Discord bots. It provides a full-featured client for Discord's REST API and Gateway (WebSocket) protocol, including support for slash commands, message components (buttons, select menus, modals), voice/audio (Opus, DAVE encryption), auto-moderation, scheduled events, forum channels, polls, stickers, soundboard, and sharding. The architecture is event-driven with a rich hierarchy of typed events, an asynchronous request system (RestAction) with combinators (map, flatMap, delay), and a fluent manager pattern for entity modifications. It includes a custom component tree with immutable replacement, ETF (Erlang External Term Format) encoding for gateway payloads, and a thread-safe caching layer using Trove maps. The codebase is well-structured with extensive unit tests, snapshot testing, and architecture compliance tests. It is actively maintained with regular releases and a large community.

RATING: 8.8/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
mtrudel/bandit ★ 1922 118 APPLICATION

Bandit is a production-grade HTTP server library for Elixir, implementing HTTP/1 (RFC 9112), HTTP/2 (RFC 9113), and WebSocket (RFC 6455) protocols. It is built on the Thousand Island connection management library and serves as the default HTTP server for the Phoenix web framework (since version 1.7.11). The library is designed for correctness, security, and performance, achieving 100% conformance in the h2spec (HTTP/2) and Autobahn (WebSocket) test suites, while outperforming alternatives like Cowboy in benchmark comparisons. Architecturally, Bandit uses a protocol-sniffing initial handler that dispatches incoming connections to either an HTTP/1 or HTTP/2 handler based on the client preface. HTTP/2 connections follow a process-per-connection model with a separate stream process for each concurrent request, while HTTP/1 and WebSocket connections operate within a single process. The library exposes a small public API centered on the `Bandit` module, which validates options and delegates to Thousand Island. Internally, it defines clear abstractions such as the `Bandit.HTTPTransport` protocol for shared transport logic, a reusable `Bandit.Extractor` state machine for frame parsing, and telemetry spans for observability. Key features include support for HTTP/1 keepalive, HTTP/2 flow control and HPACK header compression, WebSocket permessage-deflate compression, content-encoding negotiation (gzip, deflate, zstd), Unix socket binding, and comprehensive error handling with clear RFC citations. The library is actively maintained with frequent releases addressing security vulnerabilities and edge cases, and includes extensive CI workflows for conformance testing, benchmarking, and regression prevention.

RATING: 8.8/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
cloudflare/moltworker ★ 9949 1713 APPLICATION

This repository implements a Cloudflare Worker that runs the OpenClaw personal AI assistant inside a Cloudflare Sandbox container. The worker acts as a reverse proxy, forwarding HTTP and WebSocket traffic to the OpenClaw gateway running on port 18789 inside the container. It provides an admin UI (React SPA) for device pairing management, REST API endpoints for device approval and storage sync, a Chrome DevTools Protocol (CDP) shim for browser automation via Cloudflare Browser Rendering, and debug routes for troubleshooting. The architecture is a single Hono application with middleware for logging, environment validation, and Cloudflare Access authentication. The catch-all route proxies requests to the container, with special handling for WebSocket connections (message interception for error transformation) and crash recovery (automatic gateway restart with R2 backup restore). The codebase is well-structured with TypeScript strict mode, comprehensive unit tests, and a full end-to-end test suite that deploys to real Cloudflare infrastructure. Notable features include a robust process lifecycle manager for the gateway, a cron-based container wake mechanism, and a CDP shim that translates CDP commands to Puppeteer calls.

RATING: 8.7/10 MAINT: active DRIFT: low
▸ 4 reusable components found
CrowCpp/Crow ★ 5004 563 APPLICATION

Crow is a modern C++ microframework for building HTTP and WebSocket services. Designed as a single-header library (or modular headers), it provides a Flask-like routing system with typed URL parameters, a middleware pipeline (global and per-route), built-in JSON parsing and generation, Mustache templating, multipart form handling, static file serving, gzip/deflate compression, and SSL/TLS support. The framework is header-only and leverages C++17/20 features such as std::string_view, std::optional, and constexpr where possible. It includes a comprehensive test suite (Catch2), fuzz testing for security, and extensive documentation via MkDocs and Doxygen. Crow is packaged for multiple platforms (Vcpkg, Homebrew, AUR, Conan, Nixpkgs) and is used in production by several open-source projects. The architecture is event-driven, built on top of Asio (standalone or Boost), with a focus on performance and simplicity. Reusable components include a standalone JSON library, base64 utilities, and a flexible middleware system.

RATING: 8.7/10 MAINT: active DRIFT: low
▸ 4 reusable components found
tsrpc/tsrpc ★ 1934 201 APPLICATION

TSRPC is a TypeScript RPC framework designed for building type-safe, high-performance client-server applications. It provides both HTTP and WebSocket transports with optional JSON compatibility. The framework is built on a custom binary serialization algorithm (TSBuffer) that supports advanced TypeScript type features like union types, intersection types, and mapped types, eliminating the need for external IDL languages. TSRPC includes a rich middleware system called Flows, allowing interception and transformation of data at various stages of request/response processing. The core architecture is abstract and extensible: BaseServer, BaseConnection, and BaseCall form the foundation, with concrete implementations for HTTP (HttpServer, HttpConnection, ApiCallHttp) and WebSocket (WsServer, WsConnection, ApiCallWs). The client side mirrors this with HttpClient and WsClient that handle protocol encoding/decoding, timeouts, and automatic request aborting. The framework also supports server-to-client messages, broadcasting, heartbeat management, and graceful shutdown. With over 1900 GitHub stars and an active maintenance history (latest version 3.4.21), the codebase demonstrates solid engineering practices: comprehensive test coverage across multiple transport modes (HTTP, HTTPS, WS, WSS, both binary and JSON), clean separation of concerns, and robust error handling. The repository includes benchmarking tools and integration tests that verify correctness under various conditions.

RATING: 8.7/10 MAINT: maintained DRIFT: low
▸ 2 reusable components found
Discord4J/Discord4J ★ 1920 269 APPLICATION

Discord4J is a reactive, modular Java library for building Discord bots. It provides a high-level abstraction over Discord's REST API, Gateway WebSocket, and Voice protocols, built on Project Reactor and Netty. The library is structured into separate modules: `common` (shared utilities, store abstraction, rate limiting), `rest` (HTTP client with rate limiting and retry), `gateway` (WebSocket client with state management), `core` (domain objects, event system, spec builders), `voice` (voice connection with encryption and DAVE protocol), and `oauth2` (OAuth2 authentication). The architecture follows a layered design with pluggable components for caching (StoreLayout), rate limiting (GlobalRateLimiter), serialization (ExchangeStrategies), and event dispatching. The codebase demonstrates strong software engineering practices: extensive use of immutable specs via the Immutables library, reactive streams for all I/O, and a comprehensive event hierarchy mirroring Discord's API. However, it contains a mix of deprecated legacy specs and newer immutable specs, some experimental features, and a few duplicated utilities. Overall, it is a well-crafted, production-ready library with active maintenance and good reusability in its core patterns.

RATING: 8.7/10 MAINT: active DRIFT: low
▸ 3 reusable components found
shekohex/opencode-pty ★ 587 60 APPLICATION

This repository is an OpenCode plugin that provides interactive pseudo-terminal (PTY) management for AI coding agents. It allows agents to spawn, write to, read from, and kill multiple background terminal sessions, enabling long-running processes like dev servers, watch modes, and interactive programs. The plugin exposes five tools (pty_spawn, pty_write, pty_read, pty_list, pty_kill) and two slash commands for opening a web UI. The architecture is modular: a core PTYManager orchestrates session lifecycle, output buffering (via a RingBuffer), and exit notifications, while adapters decouple the plugin from OpenCode V1 and V2 APIs. A Bun-based web server serves a React frontend with real-time WebSocket streaming and a REST API for session management. The codebase demonstrates strong TypeScript patterns, clean abstractions, and comprehensive testing (unit, integration, and Playwright E2E).

RATING: 8.7/10 MAINT: active DRIFT: low
▸ 5 reusable components found
kxxt/aspeak ★ 496 60 APPLICATION

aspeak is a text-to-speech client for Azure TTS API, written in Rust. It provides a CLI, a Rust library, and Python bindings. The core functionality synthesizes speech from plain text or SSML using either the REST or WebSocket API. The architecture is modular: the library defines two synthesizer types (`RestSynthesizer` and `WebsocketSynthesizer`) with a unified trait, and a CLI wraps these for command-line use. The Python binding exposes a `SpeechService` class. The codebase demonstrates solid Rust engineering with builder patterns, comprehensive error handling, and support for proxies, custom audio formats, and rich SSML options. It is well-tested with unit and integration tests, has CI/CD pipelines, and is actively maintained.

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