Awesome WebSockets [](https://github.com/sindresorhus/awesome)

August 16, 2026 · View on GitHub

A curated list of WebSockets related principles and technologies.

WebSocket is a computer communications protocol, providing full-duplex communication channels over a single TCP connection. The WebSocket protocol was standardized by the IETF as RFC 6455 in 2011, and the WebSocket API in Web IDL is being standardized by the W3C.

Contents

Tools per Language

Agnostic

  • Apache-websocket - Apache WebSocket module.
  • Centrifugo - Scalable real-time messaging in language-agnostic way.
  • gwsocket - Fast, standalone, language-agnostic WebSocket server RFC6455 compliant.
  • MinnowServer - A super small and fast embedded HTTP(S) WebSocket server.
  • Nchan - Nchan is a scalable, flexible pub/sub server for the modern web, built as a module for the Nginx web server.
  • SocketCluster - Scalable pub/sub WebSocket framework with support for horizontal scaling across multiple hosts and processes.
  • Websocketd - WebSockets the UNIX way - Full duplex messaging between web browsers and servers.

Ballerina

  • Ballerina WebSocket Module - Tailored WebSocket client and server implementations in Ballerina, designed and optimized for seamless integration.

C

  • civetweb - Embedded C/C++ web server with WebSocket client and server support, easy to integrate.
  • facil.io - A server/framework library for web applications, including Websockets and native pub/sub.
  • libuwsc - A Lightweight and fully asynchronous WebSocket client C library based on libubox for Embedded Linux.
  • Libwebsockets - It's a lightweight pure C library built to use minimal CPU and memory resources, and provide fast throughput in both directions as client or server.
  • mongoose - Mongoose Embedded Web Server Library - Mongoose is more than an embedded webserver. It is a multi-protocol embedded networking library with functions including TCP, HTTP client and server, WebSocket client and server, MQTT client and broker and much more.
  • Websocket - Websocket server written in C.
  • WebSockets in C - A minimal implementation for embedded applications.
  • Wslay - Designed to be embedded in other programs; freedom to choose your own network I/O. Event-based API, as well as synchronous frame-based.

C++

  • Beast - HTTP and WebSocket built on Boost.Asio in C++11.
  • Crow - Fast and easy-to-use C++ microframework for the web, with WebSocket support.
  • Drogon - Fast C++14/17/20 HTTP application framework with built-in WebSocket controllers.
  • IXWebSocket - Lightweight C++11 multi-threaded client library with TLS support.
  • LAppS - LAppS - Lua Application Server for micro-services with default communication over WebSockets.
  • libhv - A network library for developing TCP/UDP/SSL/HTTP/WebSocket client/server.
  • Oat++ - Light and powerful C++ web framework with async WebSocket support and zero dependencies.
  • POCO - C++ libraries for network-centric applications, including HTTP and WebSocket classes.
  • QtWebSockets - The QtWebSockets module is an add-on for the Qt5 library.
  • Simple-WebSocket-Server - A very simple, fast, multithreaded, platform independent WebSocket (WS) and WebSocket Secure (WSS) server and client library implemented using C++11, Boost.Asio and OpenSSL.
  • Websocketpp - C++ Websocket client/server library.
  • µWebSockets - Highly scalable WebSocket server library.

C#

  • ASP.NET SignalR - Incredibly simple real-time web for .NET.
  • Fleck - Simple C# WebSocket server implementation with no dependencies.
  • NetGain - A high performance websocket server library powering Stack Overflow.
  • Ninja.WebSockets - Standalone, high-performance C# WebSocket client and server implementation.
  • unity-websocket-server - A simple, zero-dependency WebSocket server for Unity.
  • websocket-client - Reactive, reconnecting WebSocket client for .NET based on System.Net.WebSockets.
  • WebSocketListener - Lightweight and highly scalable asynchronous WebSocket server for .NET/Mono.
  • websocket-manager - Real-Time library for ASP .NET Core.
  • websocket-rpc - WebSocket RPC library for .NET with auto JavaScript client code generation, supporting ASP.NET Core.
  • WebSockets - Implementation of the WebSocket protocol, along with client and server integration components.
  • websocket-sharp - A C# implementation of the WebSocket protocol client and server.
  • WebSockets support in ASP.NET Core - This article explains how to get started with WebSockets in ASP.NET Core.

D

  • Arsd:CGI - Uniform server-side API for CGI, FastCGI, SCGI, and HTTP web applications. Offers both lower- and higher- level api options among other common (optional) things like websocket and event source serving support.
  • Handy - The simplest HTTP server for your D project.
  • Lighttp - Lightweight asynchronous HTTP and WebSocket server library for the D.
  • Serverino - Small and ready-to-go http server. Support for websockets included.
  • Vibe.d - High-performance asynchronous I/O, concurrency and web application toolkit written in D.
  • Websocketd - A websocket server in D.

Elixir

  • Bandit - Pure-Elixir HTTP and WebSocket server built for Plug and WebSock.
  • Phoenix - Productive Elixir web framework with Channels for realtime, scalable WebSocket communication.
  • Phoenix LiveView - Rich, realtime server-rendered UIs over WebSockets without writing JavaScript.
  • WebSockex - Elixir WebSocket client library built on top of GenServer.

Erlang

  • Cowboy - Small, fast, modular HTTP server written in Erlang.
  • Gun - Erlang HTTP/1.1, HTTP/2 and WebSocket client library.
  • Kraken - Distributed Pubsub Server for Realtime Apps.
  • n2o - Erlang web server on websockets.
  • Sockjs-erlang - WebSocket emulation - Erlang server.

Go

  • 1m-go-websockets - Handling 1M websockets connections in Go.
  • Centrifuge - Real-time messaging library for Go with scalability in mind.
  • coder/websocket - A minimal and idiomatic WebSocket library for Go (formerly nhooyr/websocket).
  • Fiber WebSocket - WebSocket middleware for the Fiber web framework, built on Fasthttp.
  • Gorilla Websocket - WebSocket implementation for Go.
  • go-socket.io - Socket.IO library for Go, a realtime application framework.
  • gotify/server - A simple server for sending and receiving messages in real-time per web socket.
  • greatws - Event-driven WebSocket server able to handle millions of connections with low memory.
  • GWS - Simple, fast, reliable websocket server & client, supports running over tcp/kcp/unix domain socket.
  • KubeStellar Console - AI-powered multi-cluster Kubernetes dashboard using WebSockets for real-time cluster communication and live observability streams.
  • Melody - Minimalist framework for dealing with WebSocket sessions, including broadcasting and message buffering.
  • nbio - Non-blocking, event-driven networking framework with high-performance WebSocket support and low memory usage.
  • Velaros - A lightweight framework with HTTP-style routing, bidirectional messaging, and middleware.
  • Websocket - Package Websocket implements a client and server for the WebSocket protocol as specified in RFC 6455.
  • Ws - Tiny WebSocket library for Go.

Haskell

  • n2o - Haskell implementation of Erlang's n2o - web server on websockets.
  • Websockets - A Haskell library for creating WebSocket-capable servers.

Java VM

Clojure

  • Chord - Library designed to bridge the gap between the triad of CLJ/CLJS, web-sockets and core.async.
  • http-kit - Minimalist, high-performance HTTP server and client with async WebSocket support.
  • Luminusweb - Luminus is a Clojure micro-framework based on a set of lightweight libraries.
  • Sente - Realtime web comms for Clojure/Script.

Java

  • Atmosphere - Realtime Client Server Framework for the JVM, supporting WebSockets with Cross-Browser Fallbacks.
  • Javalin - Lightweight web framework for Java and Kotlin with simple WebSocket handlers.
  • Java-WebSocket - Barebones WebSocket client and server implementation written in 100% Java.
  • Jetty - Lightweight, embeddable Java web server and servlet container with Jakarta and native WebSocket support.
  • Netty - Asynchronous event-driven network framework with full WebSocket codec support.
  • nv-websocket-client - High-quality WebSocket client implementation in Java which.
  • Project Tyrus - JSR 356: Java API for WebSocket - Reference Implementation.
  • Spring WebSocket - WebSocket and STOMP messaging support built into the Spring Framework.
  • Undertow - High-performance web server (WildFly's core) with a dedicated WebSocket API.
  • Vert.x - Reactive, polyglot toolkit for the JVM with first-class WebSocket client and server APIs.
  • Webbit - Java event based WebSocket and HTTP server.

Kotlin

  • Ktor - JetBrains' Kotlin async framework with built-in WebSocket client and server support.
  • OkHttp - HTTP client for the JVM and Android with a robust WebSocket client.
  • Scarlet - Tinder's Retrofit inspired WebSocket client for Kotlin, Java, and Android.

Scala

  • Apache Pekko HTTP - Streaming WebSocket client and server directives; the Apache-licensed Akka HTTP fork.
  • Finagle-websocket - Finagle Websocket clients and servers.
  • http4s - Typeful, functional, streaming HTTP for Scala with WebSocket support.
  • Play - The high velocity web framework for Java and Scala.
  • ZIO HTTP - High-performance, functional Scala HTTP library with WebSocket support built on ZIO.

Julia

  • HTTP.jl - HTTP library for Julia with support on Websockets.
  • WebSockets.jl - A WebSockets library for Julia.

Node.js / JavaScript

  • Bun WebSockets - Native high-performance WebSocket server built into the Bun runtime with pub/sub support.
  • deepstream.io - Open realtime server a fast, secure and scalable realtime server for mobile, web & iot.
  • faye-websocket-node - Standards-compliant WebSocket client and server.
  • graphql-ws - Coherent, zero-dependency, spec-compliant GraphQL over WebSocket server and client.
  • Hono WebSocket Helper - Built-in WebSocket helper for the Hono framework across Cloudflare Workers, Bun, Deno, and Node.js.
  • netflux - JavaScript client and server side transport API based on WebRTC & WebSocket
  • Nodejs-websocket - Node.js module for websocket server and client.
  • PartySocket - Robust WebSocket client with automatic reconnection and buffering, usable against any WS server.
  • rpc-websockets - JSON-RPC 2.0 implementation over WebSockets for Node.js and JavaScript/TypeScript.
  • Socket.IO - Featuring the fastest and most reliable real-time engine.
  • Sockette - WebSocket client that will automatically reconnect if the connection is lost.
  • Sockjs-node - WebSocket emulation - Node.js server.
  • soketi - Just another simple, fast, and resilient open-source WebSockets server. Built on top of uWebSockets.js.
  • tRPC Subscriptions - End-to-end typesafe real-time subscriptions over WebSockets for TypeScript apps.
  • uws - Tiny WebSockets (access to the C++ library, µWebSockets, via Node.js)
  • websocket-as-promised - Promise-based W3C WebSocket wrapper: allows to use promises when connecting, disconnecting and messaging with WebSocket server.
  • WebSocket-Node - WebSocket Implementation for Node.JS (Draft -08 through the final RFC 6455).
  • Ws - ws: The fastest cross platform RFC-6455 WebSocket implementation for Node.js.
  • wspromisify - Makes WebSockets async/await ready with a lot of yummies.
  • ws-server-wrapper - Companion library for ws-wrapper for the server-side.
  • ws-wrapper - Lightweight WebSocket wrapper that provides a socket.io-like event-handler API along with Promise-based requests.
  • y-websocket - WebSocket connection provider for Yjs, enabling real-time collaborative editing and CRDT sync.
  • ZilaWS Server - A very easy-to-use and fast WS implementation with async/await eventhandlers and extendable classes.

Perl

PHP

  • Laravel Websockets - A package for Laravel 5.7 and up that will get your application started with WebSockets in no-time!
  • Php-websocket - Simple PHP WebSocket implementation for PHP 5.3.
  • Phpws - PHP Web Socket server.
  • Ratchet - Ratchet is a loosely coupled PHP library providing developers with tools to create real time, bi-directional applications between clients and servers over WebSockets.
  • Sandstone - Microframework to build a real time Rest API.

Python

  • aiohttp - Asynchronous HTTP client/server framework for asyncio, with built-in WebSocket client and server support.
  • Autobahn.ws - Open-source real-time framework for Web, Mobile & Internet of Things.
  • Django Channels - Extends Django with WebSocket, long-poll HTTP, task offloading and other async support.
  • FastAPI - Modern, high-performance web framework for building APIs, with first-class WebSocket support.
  • Picows - Ultra-fast WebSocket client and server library for asyncio.
  • python-socketio - Python implementation of the Socket.IO realtime client and server.
  • python-websocket-server - Minimal, dependency-free WebSocket server written in pure Python.
  • Simple Http Server A simple HTTP server, including support of numerous websocket events like on_text_message, on_binary_message etc. And even on_binary_frame.
  • simple-websocket - Simple WebSocket server and client for Python built on WSGI/ASGI.
  • Socketify.py - Fast WebSocket and HTTP server for Python built on uWebSockets, with ASGI/WSGI support.
  • Starlette
  • Tornado - Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed.
  • WebRockets - Rust-powered WebSocket server with Django integration, message pattern matching, Pydantic validation, and more.
  • WebSocket Benchmarker - CLI tool for benchmarking WebSocket Servers.
  • websocket-client - Popular, long-standing synchronous client for Python.
  • Websockets (code) - Websockets is a library for developing WebSocket servers and clients in Python 3.
  • Ws4py - WebSocket package for Python.

R

  • httpuv - Provides low-level socket and protocol support for WebSocket (and HTTP) servers in R. Built on top of the libuv and http-parser C libraries.
  • routr - A simple router for WebSocket (and HTTP) requests in R.
  • websocket - Provides a WebSocket client interface for R.

Ruby

  • AnyCable - Polyglot replacement for Ruby WebSocket servers with Action Cable protocol.
  • Em-websocket - EventMachine based WebSocket server.
  • Faye-websocket-ruby - Standards-compliant WebSocket client and server.
  • Firehose - Build realtime Ruby web applications. Created by the fine folks at Poll Everywhere.
  • Iodine - WebSocket/HTTP server with integrated pub/sub and optional Redis support.
  • Rage - Fast WebSocket server compatible with Action Cable.
  • render_sync - Real-time Rails Partials.
  • Scorched - Light-weight web framework for Ruby.
  • Slanger - Open Pusher implementation compatible with Pusher libraries.
  • Websocket-driver-ruby - WebSocket protocol handler with pluggable I/O.
  • websocket-rails - Plug and play websocket support for ruby on rails.
  • Websocket-ruby - Universal Ruby library to handle WebSocket protocol.

Rust

  • Actix - A Rust web framework with support for the Websocket Protocol
  • async-tungstenite - Async binding for Tungstenite, runtime-agnostic across async-std, tokio, and smol.
  • Axum - Ergonomic and modular web framework built with Tokio, Tower, and Hyper, with built-in WebSocket support.
  • Fastwebsockets - A fast RFC6455 WebSocket server implementation
  • ntex - Powerful, pragmatic and fast web framework with WebSocket support.
  • Ratchet - Ratchet is a fast, lightweight and fully asynchronous implementation of the WebSocket protocol with support for extensions and Deflate.
  • rust-websocket - RFC6455 library providing both synchronous and asynchronous client and server.
  • tide-websockets - WebSocket handler for the Tide web framework.
  • Tokio-Tungstenite - Tokio binding for Tungstenite, the Lightweight stream-based WebSocket implementation
  • Tungstenite - Lightweight stream-based WebSocket implementation
  • warp - Composable, Tokio-based web server framework with a WebSocket filter.
  • Websocket Core - Rust Websocket server for periodic message broadcast
  • wtx - Client and server with encryption support.

Swift

  • Hummingbird - Lightweight, flexible Swift server framework on SwiftNIO with WebSocket support.
  • socket.io-client-swift - Official Socket.IO client for Swift.
  • Starscream - Conforming WebSocket (RFC 6455) client library in Swift for iOS and macOS.
  • SwiftNIO - Apple's cross-platform async event-driven network framework, a foundation for WebSocket servers.
  • Vapor - A high level web framework for Swift.
  • WebsocketKit - A low level WebSocket client library built on SwiftNIO.

Protocols and APIs

  • RFC6455 - The WebSocket Protocol.
  • RFC7692 - Compression Extensions for WebSocket (permessage-deflate).
  • RFC8441 - Bootstrapping WebSockets with HTTP/2.
  • The WebSocket API - WebSockets - Living Standard.
  • Live Tennis API - Real-time tennis score events (point-by-point state, serving, break points) streamed over WebSocket on paid tiers, with a free REST tier. SDKs for Node.js and Python.
  • TikTokLive - A TikTok LIVE API Client built in Python, with strict mypy type safety & a copyleft license. Real-time TikTok LIVE stream events (gifts, chats, etc.) over WebSocket.
  • TikTok-Live-Connector - Open source TikTok LIVE stream events API, with delivery over WebSocket. The predominant & native TypeScript library for TikTok LIVE integrations.
  • TikTokLiveJava - A TikTok LIVE API Client built in Java. Real-time TikTok LIVE stream events (gifts, chats, etc.) over WebSockets.
  • TikTool Live - Real-time TikTok LIVE stream events (chat, gifts, viewers) via WebSocket. SDKs for Node.js and Python.
  • WAMP - The Web Application Messaging Protocol: routed RPC and publish/subscribe over WebSocket.

Managed / Hosted Services

  • Ably - Managed pub/sub realtime platform with WebSocket-based messaging, presence, and guaranteed delivery.
  • AWS API Gateway WebSocket APIs - Managed WebSocket APIs that route messages to Lambda and other AWS backends.
  • Cloudflare Durable Objects - Stateful serverless coordination primitive commonly used to build WebSocket rooms and realtime backends at the edge.
  • Cloudflare Workers WebSockets - Native WebSocket support in Cloudflare Workers, including hibernatable connections.
  • Liveblocks - Hosted realtime collaboration infrastructure providing presence, storage, and comments over WebSockets.
  • Momento Topics - Serverless pub/sub and caching service with realtime topics accessible over WebSockets.
  • PartyKit - Open-source platform for building realtime multiplayer apps on Cloudflare with a batteries-included WebSocket server abstraction.
  • PubNub - Realtime edge messaging platform delivering pub/sub over WebSockets at global scale.
  • Pusher Channels - Hosted WebSocket API for pub/sub realtime features with client SDKs across platforms.
  • Supabase Realtime - Realtime engine broadcasting Postgres changes, presence, and messages to clients over WebSockets.

GUI Testing Tools

  • Apidog - All-in-one API platform with a dedicated WebSocket debugging client for messages, params and auth.
  • Bruno - Open-source, offline-first API client with WebSocket support and git-friendly plain-text collections.
  • Firecamp - Full-featured GUI WebSocket testing client which helps Dev team to test WebSocket events visually. Test APIs, save them in the project and share it with your team.
  • Hoppscotch Realtime - Free, open-source browser client for testing WebSocket, SSE, Socket.IO and MQTT connections.
  • Insomnia - Open-source API client with native WebSocket request support alongside REST, GraphQL and gRPC.
  • Postman WebSocket - Send and inspect raw WebSocket and Socket.IO requests inside Postman, with saved history and collections.
  • Simple WebSocket Client - Simple WebSocket Client (Chrome Extension).
  • Thunder Client - Lightweight VS Code REST and WebSocket client for testing connections without leaving the editor.
  • WebSocket.in - Browser-based WebSocket tester plus free public echo and broadcast endpoints for quick checks.
  • WebSocket King - A browser based WebSocket testing client that supports multiple simultanious connections, logs of incoming and outgoing messages, custom protocols and multiple projects.

Browser libraries

  • react-use-websocket - React hook for WebSocket connections with reconnection, message queueing, and shared connections.
  • WSGO - like Axios.js, only for WebSocket, adds handy debugging tools
  • ZilaWS Client - A very easy-to-use and fast WS implementation with async/await eventhandlers.

Visualization Tools

Command-Line Interface (CLI) Tools

  • claws - Awesome WebSocket Client - an interactive command line client for testing websocket servers.
  • iola - Socket client with Rest API (WebSocket, Socket.IO, TCP, Unix socket).
  • websocat - Command-line client for WebSockets, like netcat (or curl) for ws:// with advanced socat-like functions.
  • websocketd - Turn any program that uses STDIN/STDOUT into a WebSocket server. Like inetd, but for WebSockets.
  • ws - websocket command line tool.
  • wsc - A tiny command line websocket client written in Go.
  • wscat - WebSocket cat.
  • ws-cli - WebSocket Command Line Client written in Go.
  • wssh - wssh ("wish") is a command-line utility/shell for WebSocket inspired by netcat.
  • wsta - A CLI development tool for WebSocket APIs.
  • ws-tool - A Develop Tool to Test WebSocket, Socket.IO, Stomp, Bayeux, HTTP, TCP, UDP, WebRTC, DNS API.

Real Life Stories

Security

  • WebSockets - An Introduction - The problems and some security implications of websockets - Cross-site WebSockets Scripting (XSWS).
  • Hacking with WebSockets - Talk on Blackhat USA 2012 Conference.
  • Testing for WebSockets Security Vulnerabilities - Interactive vulnerable WebSocket demos that provide hands-on learning of WebSocket security risks
  • Testing WebSockets - OWASP Web Security Testing Guide (WSTG), client-side WebSocket testing chapter.
  • Websockets Auth - Journey into WebSockets Authentication/Authorization.
  • WebSocket Security - The WebSocket protocol is a young technology, and brings with it some risks. Decades of experience have taught the web community some best practices around HTTP security, but the security best practices in the WebSocket world aren’t firmly established, and continue to evolve. Nevertheless, some themes have emerged and they are described in this article.
  • Cross-Site WebSocket Hijacking - Cross-Site WebSocket Hijacking (CSWSH) - Web Application Security Blog.
  • Cross-site WebSocket hijacking labs - PortSwigger deep-dive on CSWSH with interactive labs.

Theory

Articles & Papers

Tutorials

Books

Sites

License

CC0

Contributing

Please, read the Contribution Guidelines before submitting your suggestion.

Feel free to open an issue or create a pull request with your additions.

Thanks!

Acknowledgments

Table of contents generated with DocToc