30 open-source projects similar to socketio/engine.io, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Engine.io alternative.
sockjs-client is a JavaScript library that provides a WebSocket-compatible API for real-time, bidirectional communication between a web browser and a server. It functions as a transport-layer abstraction that ensures a stable full-duplex connection by emulating socket behavior. The library is distinguished by its automatic protocol-fallback mechanisms. When native WebSockets are unavailable or blocked by restrictive network environments, such as firewalls or proxies, it switches to HTTP-streaming emulation or XHR-polling to maintain connectivity. It covers capabilities for cross-domain data
Socket.IO Client is a real-time WebSocket client library that establishes persistent bidirectional connections to a server, with automatic fallback to HTTP long-polling when WebSocket connections are unavailable. It provides an event-based bidirectional messaging framework where clients and servers exchange named events with serializable data, supporting acknowledgements and timeouts for reliable communication. The client distinguishes itself through automatic reconnection with exponential backoff, maintaining connection reliability by monitoring health and reconnecting with increasing delays
This is a Java library for establishing real-time bidirectional communication with servers using the Socket.IO protocol. It functions as an event-driven communication client that allows Java applications to exchange named events and binary data with a remote server. The library implements both WebSocket and HTTP long-polling transports, providing a fallback mechanism when WebSocket connections are unavailable. It supports namespace-based multiplexing to divide a single physical network connection into multiple logical channels for separating data streams. The project covers a broad range of
Vibora is an asynchronous Python web framework and built-in HTTP server designed for building high-performance web applications. It utilizes an asynchronous event loop and coroutines to process network requests and serve responses without requiring external server wrappers. The project features a high-performance asynchronous schema validator for request integrity, a non-blocking template engine with support for hot-reloading, and a WebSocket communication server for bidirectional real-time data exchange. The framework covers a broad range of capabilities, including modular route management
Atmosphere is a Java-based framework for building and coordinating AI agents. It provides a real-time transport layer for streaming data via WebSockets, SSE, gRPC, and WebTransport, alongside a multi-agent orchestration framework for managing agent fleets through sequential, parallel, and graph-based execution workflows. The project features a durable workflow engine that persists agent state as snapshots, allowing long-running tasks to survive system restarts and incorporate human-in-the-loop approvals. It also implements Model Context Protocol servers to expose tools, resources, and prompt
Socket.io is a real-time communication engine that enables bidirectional, event-based data exchange between clients and servers. It provides a robust transport-agnostic protocol layer that automatically manages connection lifecycles, including heartbeat signals, automatic reconnection, and seamless fallback between WebSockets and HTTP long-polling. By maintaining persistent links, it ensures reliable messaging across diverse network environments. The project distinguishes itself through a scalable, distributed architecture that supports multi-node synchronization and room-based message routin
Ring is a Clojure HTTP web library that represents requests and responses as immutable data structures. It provides a functional framework for web development, treating HTTP traffic as standardized maps to decouple application logic from specific server implementations. The project features a middleware framework for composing reusable functional layers to handle cross-cutting concerns such as authentication and logging. It includes a server adapter system that translates raw traffic into request maps, as well as a dedicated integration layer for upgrading standard HTTP connections to bidirec
Primus is a real-time communication abstraction layer and middleware framework. It provides a standardized interface for messaging that allows developers to switch between different transport engines without rewriting application logic, while also serving as a wrapper for managing socket lifecycles. The project distinguishes itself by functioning as a real-time client library generator, producing compatible client-side code based on server configurations. It further organizes data flow through virtual stream multiplexing and the ability to group connections into named communication rooms for
This project is a Node.js WebSocket library that provides a high-performance client and server implementation for the WebSocket protocol. It functions as a transport layer for real-time bidirectional communication, supporting both UTF-8 strings and binary data transport through the use of TCP socket wrappers. The library enables the creation of WebSocket servers that manage full-duplex connections and broadcast messages to multiple clients, as well as WebSocket clients that establish persistent links to remote servers. It handles the protocol upgrade process via TCP-based handshake negotiatio
This project provides a technical specification and reference manual for the MQTT 3.1.1 standard, serving as a translated Chinese guide for implementing this lightweight IoT messaging protocol in resource-constrained device networks. The documentation covers the fundamental mechanisms of the publish-subscribe model, including topic-based routing with wildcard filtering, retained message storage, and the configuration of last will and testament messages. It details the protocol's approach to reliability through various quality of service levels, ranging from single-level acknowledgments to exa
tarpc is a remote procedure call framework for Rust that generates server traits and client stubs for network communication. It provides an asynchronous service interface that allows remote functions to be called as if they were local asynchronous tasks. The framework utilizes a serialized transport layer to move request and response data via TCP sockets, Unix domain sockets, or in-process channels. It includes a request lifecycle interceptor for injecting custom logic to handle authorization, throttling, and load balancing, as well as a distributed request telemetry system that attaches dead
Baileys is a TypeScript API client library used to interact with the WhatsApp Web API via WebSockets without requiring a browser. It functions as a real-time communication tool that handles bidirectional data exchange and event-based socket connections. The project includes a dedicated toolkit for managing WhatsApp Business profiles and product catalogs, alongside a session manager that authenticates accounts using QR codes or pairing codes and persists session state to disk. Its capabilities cover a wide range of messaging functions, including multi-type message transmission, chat history s
Gotify is a self-hosted notification server designed to centralize the receipt and dispatch of real-time messages. It provides a RESTful API and a WebSocket gateway, allowing users to programmatically send alerts and push notifications to connected clients. By maintaining a private infrastructure, the platform ensures full control over message history, data retention, and access management. The system distinguishes itself through a modular, plugin-based architecture that allows for the extension of core functionality, including custom HTTP endpoints and webhook event processing. It supports g
This project is an asynchronous library for the Python programming language designed to facilitate the development of automated agents and interactive applications on the Discord platform. It provides a comprehensive framework for building event-driven software that manages real-time communication, server resources, and user interactions through a structured interface. The library utilizes a non-blocking event loop to handle concurrent network operations, allowing developers to maintain persistent bidirectional connections via WebSockets. It features a declarative system for routing text-base
Beszel is a self-hosted server monitoring platform designed to track real-time performance metrics across multiple host systems and containerized environments. It functions as a centralized dashboard that aggregates data on processor, memory, disk, and network usage, providing visibility into both host-level infrastructure and individual container workloads. The system utilizes lightweight agents to collect performance data, which is then streamed to a central hub and stored in a local relational database. It distinguishes itself through a real-time analytics engine that uses persistent bidir
Xray-core is a high-performance, cross-platform networking engine designed to manage secure data transmission and traffic routing. At its core, the project utilizes an asynchronous, event-driven runtime model capable of handling thousands of concurrent connections through non-blocking input and output. It functions as a central traffic controller, employing a sophisticated routing engine that dynamically matches incoming network requests to specific outbound proxies based on user-defined criteria. The project distinguishes itself through a modular architecture that decouples proxy and transpo
OpenSpeedy is a network acceleration utility designed to optimize data transmission between applications and remote servers. It functions as a congestion control middleware and traffic processing engine, operating within the kernel space to minimize latency and reduce CPU overhead during packet delivery. The project distinguishes itself through its ability to aggregate multiple network interfaces into a single logical stream, enhancing bandwidth and link reliability. It employs custom transport protocols that bypass head-of-line blocking and utilizes forward error correction to reconstruct lo
Swifter is a lightweight HTTP server engine and routing system written in the Swift programming language. It functions as a web server capable of handling network requests and delivering responses such as HTML and plain text. The project provides a Swift WebSocket server for establishing bidirectional real-time communication channels to exchange text and binary data. It also includes a static file server that maps URL paths to local directories for direct file system access. The engine manages HTTP request routing by mapping specific URL paths to handler functions for delivering dynamic cont
This is a self-hosted WebSocket server for Laravel applications designed to provide real-time communication and replace third-party managed messaging services. It provides a server-side PHP implementation of the WebSocket standard, enabling full-duplex communication between clients and servers. The project implements a Pusher-compatible protocol to integrate with existing frontend client libraries. It includes a dedicated debug dashboard for monitoring active connections, tracking network traffic, and analyzing real-time server performance. The system supports Laravel event broadcasting and
libhv is a high-performance C/C++ network library and event-driven I/O framework used to build TCP, UDP, SSL, HTTP, WebSocket, and MQTT clients and servers. It provides a non-blocking event loop for managing network sockets, timers, and system signals across multiple threads. The project is distinguished by its integrated support for specialized network roles, including a full HTTP web server with RESTful routing and middleware, an MQTT messaging client for IoT communication, and the ability to implement SOCKS5 and HTTP proxies. It also features a reliable UDP implementation to ensure ordered
go-socket.io is a Go implementation of the Socket.IO protocol used to build real-time, bidirectional, and event-driven communication between servers and clients. It functions as a communication framework that manages persistent connections and maps incoming network packets to specific handler functions to execute application logic. The library enables horizontal scaling of real-time connections through a distributed pub/sub adapter, which synchronizes events across multiple server instances using an external data store. It ensures reliability across different network environments by automatic
This project is a self-hosted note-taking platform and collaborative markdown wiki. It functions as a real-time markdown collaborative editor, allowing multiple users to create, organize, and share documents simultaneously. The platform is designed for self-hosted knowledge management and collaborative markdown documentation, providing a private environment for teams to maintain shared technical notes.
This is a minimal WebSocket library for Go designed for bidirectional real-time communication. It serves as a network protocol implementation for managing handshakes, frame masking, and control signals to enable the exchange of text and binary messages over persistent connections. The library distinguishes itself by providing a connectivity layer that wraps browser WebSocket APIs for applications compiled to WebAssembly. It also functions as data compression middleware, utilizing deflate compression to reduce bandwidth usage for transmitted messages. The project covers a broad range of netwo
ihp is a type-safe web framework and full-stack application orchestrator designed for PostgreSQL. It functions as a server-side rendering framework and a type-safe ORM that automatically generates record types from SQL schemas to ensure compile-time query validation. The platform distinguishes itself by verifying routing, database queries, and templates at compile time to prevent runtime crashes. It implements real-time web interfaces using WebSockets for instant data synchronization and employs server-driven hypermedia for partial DOM patching. The framework covers a broad range of integrat
Yoga is a GraphQL server framework and runtime-agnostic HTTP handler used to build and deploy GraphQL APIs. It functions as a toolkit for managing schemas and resolvers, providing a spec-compliant environment for hosting APIs across diverse JavaScript runtimes, including Node.js, Deno, Bun, and serverless cloud environments. The project distinguishes itself through its ability to act as an Apollo Federation gateway, composing multiple subgraphs into a single unified supergraph. It also serves as a dedicated subscription server, delivering real-time data streaming via both WebSockets and Serve
Kore is an event-driven web and WebSocket server framework designed for building high-performance web services and APIs in C or Python. It functions as a secure, concurrent application framework that utilizes non-blocking I/O and isolated worker processes to handle high-concurrency traffic. The project is distinguished by a security-first architecture that features OS-level process sandboxing, privilege separation, and the isolation of private encryption keys into dedicated processes. It enables zero-downtime deployments through dynamic module hot-reloading and provides automated TLS certific
Citybound is an open-source multiplayer city simulation game and collaborative urban planner. It provides a shared digital space where multiple users co-manage city growth, design infrastructure layouts, and develop urban environments in real time. The project functions as a collaborative city builder, allowing players to plan and evolve a virtual city together. Changes made to the urban environment are reflected immediately for all connected participants within the shared simulation. The system utilizes an entity-component simulation to manage urban behavior and a shared-world coordinate sy
Uvicorn is an ASGI web application host designed for asynchronous Python web development. It serves applications through a standardized asynchronous server gateway interface to handle non-blocking network traffic and high-concurrency requests. The server manages both HTTP and WebSocket traffic, including the handshaking process required to establish persistent, full-duplex communication channels for real-time data exchange. For development workflows, the project includes a hot-reload mechanism that monitors the filesystem for source code changes and automatically restarts the server process.
This is a Yeoman generator that produces complete full-stack web application project skeletons, combining an AngularJS frontend with an Express.js backend. It scaffolds a MEAN stack project structure with MongoDB, including optional OAuth authentication and real-time WebSocket communication capabilities. The generator produces a complete project skeleton with a live-reload development server, preconfigured build and testing tools, and environment-specific configuration files. It includes role-based authentication with local and social login strategies, route protection, and admin user managem
This project is a multi-vendor marketplace platform designed for food, grocery, and courier delivery services. It provides a comprehensive system for managing the entire lifecycle of a delivery request, including customer ordering, vendor menu management, and logistics coordination between customers, vendors, and delivery agents. The platform distinguishes itself through a cross-platform architecture that bridges web-based application code into native mobile environments for deployment on standard app stores. It utilizes real-time socket communication to synchronize location updates and order