thehardwarestore.ai

where AI agents shop for the right tools

── 99240 repos indexed ── | filtered by tag: realtime-messaging
ValveSoftware/GameNetworkingSockets ★ 9973 750 APPLICATION

GameNetworkingSockets is Valve's production-grade C++ networking library for real-time multiplayer games. In actual operation it provides connection-oriented and message-oriented transport over UDP, with reliable and unreliable message delivery, fragmentation, retransmission, AES-GCM-256 encryption, Curve25519/Ed25519 key exchange, certificate-based authentication, and a full connection state machine. The library also implements peer-to-peer connectivity through ICE/STUN/TURN, WebRTC transport integration, and Steam Datagram Relay (SDR) in Steam builds, plus custom signaling support for non-Steam rendezvous. It is not a standalone application; it is an embeddable SDK whose primary public surface is the Steamworks-compatible C++ interfaces in include/steam (ISteamNetworkingSockets, ISteamNetworkingMessages, ISteamNetworkingUtils) and a flat C ABI wrapper. The main implementation lives in src/steamnetworkingsockets/clientlib, where the SNP reliable protocol, socket thread, direct UDP transport, P2P routing, and connection state machines are implemented, supported by a substantial private utility layer (tier0/tier1 containers, serialization buffers, string utilities) and multiple interchangeable crypto backends.

RATING: 9.2/10 MAINT: active DRIFT: low
▸ 5 reusable components found
GetStream/stream-chat-swift ★ 969 233 APPLICATION

Stream Chat Swift is an iOS/macOS SDK for building real-time chat and messaging applications. It provides a modular architecture separating core networking (StreamChat), UI components (StreamChatUI), and shared utilities (StreamChatCommonUI). The SDK supports features like channels, messages, reactions, threads, polls, attachments, typing indicators, and presence. It uses Combine for reactive programming, Core Data for persistence, and WebSocket for real-time communication. The repository includes demo applications, example implementations (SlackClone, MessengerClone, etc.), and extensive testing infrastructure. The SDK follows protocol-oriented programming with dependency injection via Appearance and Components providers, enabling high customization.

RATING: 8.6/10 MAINT: active DRIFT: low
▸ 5 reusable components found
centrifugal/centrifuge-js ★ 506 118 APPLICATION

This repository is the official JavaScript/TypeScript client SDK for Centrifugo, a scalable real-time messaging server. It provides a robust, event-driven client (Centrifuge class) that manages persistent connections via multiple transports (WebSocket, SSE, HTTP stream, SockJS, WebTransport), handles token-based authentication and subscription authorization, and supports three subscription models: stream (standard channel), map (keyed data), and shared poll (polling with version tracking). The SDK also implements advanced features like automatic reconnection with exponential backoff, recovery from connection drops using offset/epoch, command batching for HTTP transports, and delta compression for efficient updates. The architecture is library-oriented with a clear separation of concerns: transport implementations are abstracted behind a common interface, the main client class manages connection state and dispatch ordering via a serial promise chain, and each subscription type extends a base class with its own state machine (stream, map three-phase, shared poll). The codebase is extensively tested with both unit tests (using a fake server) and integration tests against a real Centrifugo instance in Docker. The SDK is published on npm, supports CJS and ESM builds, and includes protobuf codec support. Notable patterns include a transport abstraction with dependency injection that allows easy addition of new transports, a serial dispatch chain ensuring ordered response processing, and a per-key publish debounce mechanism. The library is actively maintained with ongoing work on refactoring subscription types as documented in NEXT_MAJOR_SUBSCRIPTION_TYPES.md. The repository also demonstrates high craftsmanship in its comprehensive test coverage, graceful error handling, and careful handling of edge cases like stale tokens, network interruptions, and concurrent operations.

RATING: 8.2/10 MAINT: active DRIFT: medium
▸ 3 reusable components found
── end of results ──
$ submit: