awesome-websockets
WebSocket toolkit
A curated list of WebSockets technologies and resources for building real-time communication channels.
A curated list of Websocket libraries and resources.
2k stars
46 watching
169 forks
last commit: 2 days ago
Linked from 2 awesome lists
html5-websocketsnode-websocketphp-websocketwebsocketwebsocket-apiwebsocket-chatwebsocket-clientwebsocket-librarywebsocket-nodewebsocket-protocolwebsocket-railswebsocket-serverwebsocketdwebsockets
Awesome WebSockets / Tools per Language / Agnostic | |||
Centrifugo | 8,415 | 6 days ago | Scalable real-time messaging in language-agnostic way |
Websocketd | WebSockets the UNIX way - Full duplex messaging between web browsers and servers | ||
Nchan | Nchan is a scalable, flexible pub/sub server for the modern web, built as a module for the Nginx web server | ||
Apache-websocket | 196 | over 8 years ago | Apache WebSocket module |
MinnowServer | 320 | about 2 months ago | A super small and fast embedded HTTP(S) WebSocket server |
gwsocket | 752 | 2 months ago | Fast, standalone, language-agnostic WebSocket server RFC6455 compliant |
Awesome WebSockets / Tools per Language / Ballerina | |||
Ballerina WebSocket Module | Tailored WebSocket client and server implementations in Ballerina, designed and optimized for seamless integration | ||
Awesome WebSockets / Tools per Language / C | |||
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 | ||
Libwebsock | 220 | 10 months ago | C library for easy WebSockets server |
Websocket | 200 | about 1 year ago | Websocket server written in C |
facil.io | A server/framework library for web applications, including Websockets and native pub/sub | ||
libuwsc | 289 | almost 3 years ago | A Lightweight and fully asynchronous WebSocket client C library based on libubox for Embedded Linux |
mongoose | 11,152 | 7 days ago | 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 |
WebSockets in C | 70 | over 1 year ago | A minimal implementation for embedded applications |
Wslay | 608 | about 2 years ago | Designed to be embedded in other programs; freedom to choose your own network I/O. Event-based API, as well as synchronous frame-based |
Awesome WebSockets / Tools per Language / C++ | |||
Websocketpp | 7,056 | 3 months ago | C++ Websocket client/server library |
QtWebSockets | The QtWebSockets module is an add-on for the Qt5 library | ||
Beast | 4,372 | 6 days ago | HTTP and WebSocket built on Boost.Asio in C++11 |
µWebSockets | 17,416 | 6 days ago | Highly scalable WebSocket server library |
Simple-WebSocket-Server | 800 | over 6 years ago | 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 |
UEWebsocket | Unreal engine 4 websocket plugin for both c++ and blueprint developer | ||
IXWebSocket | 551 | 11 days ago | Lightweight C++11 multi-threaded client library with TLS support |
LAppS | 52 | almost 4 years ago | LAppS - Lua Application Server for micro-services with default communication over WebSockets |
libhv | 6,831 | 15 days ago | A network library for developing TCP/UDP/SSL/HTTP/WebSocket client/server |
Awesome WebSockets / Tools per Language / C# | |||
ASP.NET SignalR | Incredibly simple real-time web for .NET | ||
WebSocketListener | Lightweight and highly scalable asynchronous WebSocket server for .NET/Mono | ||
websocket-rpc | 140 | about 6 years ago | WebSocket RPC library for .NET with auto JavaScript client code generation, supporting ASP.NET Core |
NetGain | 928 | almost 6 years ago | A high performance websocket server library powering Stack Overflow |
websocket-manager | 452 | almost 4 years ago | Real-Time library for ASP .NET Core |
WebSockets | 355 | about 6 years ago | Implementation of the WebSocket protocol, along with client and server integration components |
WebSockets support in ASP.NET Core | This article explains how to get started with WebSockets in ASP.NET Core | ||
unity-websocket-server | 69 | over 2 years ago | A simple, zero-dependency WebSocket server for Unity |
websocket-sharp | 5,731 | 15 days ago | A C# implementation of the WebSocket protocol client and server |
Awesome WebSockets / Tools per Language / Erlang | |||
Sockjs-erlang | 266 | over 7 years ago | WebSocket emulation - Erlang server |
Cowboy | 7,307 | 6 days ago | Small, fast, modular HTTP server written in Erlang |
n2o | 1,344 | 3 months ago | Erlang web server on websockets |
Kraken | 333 | almost 4 years ago | Distributed Pubsub Server for Realtime Apps |
Awesome WebSockets / Tools per Language / Go | |||
Gorilla Websocket | 22,445 | 3 months ago | WebSocket implementation for Go |
Websocket | Package Websocket implements a client and server for the WebSocket protocol as specified in RFC 6455 | ||
Ws | 6,143 | 5 months ago | Tiny WebSocket library for Go |
1m-go-websockets | 5,816 | over 2 years ago | Handling 1M websockets connections in Go |
gotify/server | A simple server for sending and receiving messages in real-time per web socket | ||
nhooyr/websocket | 3,950 | 14 days ago | A minimal and idiomatic WebSocket library for Go |
Centrifuge | 1,102 | 9 days ago | Real-time messaging library for Go with scalability in mind |
Awesome WebSockets / Tools per Language / Haskell | |||
Websockets | 407 | 19 days ago | A Haskell library for creating WebSocket-capable servers |
n2o | 48 | almost 3 years ago | Haskell implementation of Erlang's n2o - web server on websockets |
Awesome WebSockets / Tools per Language / Java VM | |||
Sente | 1,738 | 24 days ago | Realtime web comms for Clojure/Script |
Chord | 439 | over 4 years ago | Library designed to bridge the gap between the triad of CLJ/CLJS, web-sockets and core.async |
Luminusweb | Luminus is a Clojure micro-framework based on a set of lightweight libraries | ||
Project Tyrus | JSR 356: Java API for WebSocket - Reference Implementation | ||
Java-WebSocket | 10,530 | 7 days ago | Barebones WebSocket client and server implementation written in 100% Java |
Atmosphere | 3,693 | 14 days ago | Realtime Client Server Framework for the JVM, supporting WebSockets with Cross-Browser Fallbacks |
Webbit | 817 | 11 months ago | Java event based WebSocket and HTTP server |
nv-websocket-client | 2,028 | 10 months ago | High-quality WebSocket client implementation in Java which |
Scarlet | 3,240 | over 2 years ago | Tinder's Retrofit inspired WebSocket client for Kotlin, Java, and Android |
Play | The high velocity web framework for Java and Scala | ||
Finagle-websocket | 35 | almost 7 years ago | Finagle Websocket clients and servers |
Awesome WebSockets / Tools per Language / Julia | |||
HTTP.jl | 634 | 13 days ago | HTTP library for Julia with support on Websockets |
WebSockets.jl | 158 | almost 2 years ago | A WebSockets library for Julia |
Awesome WebSockets / Tools per Language / Node.js | |||
Socket.IO | Featuring the fastest and most reliable real-time engine | ||
Nodejs-websocket | 737 | about 1 year ago | Node.js module for websocket server and client |
WebSocket-Node | 3,757 | 6 months ago | WebSocket Implementation for Node.JS (Draft -08 through the final RFC 6455) |
Sockjs-node | 2,095 | about 1 year ago | WebSocket emulation - Node.js server |
Ws | 21,752 | 26 days ago | : The fastest cross platform RFC-6455 WebSocket implementation for Node.js |
deepstream.io | Open realtime server a fast, secure and scalable realtime server for mobile, web & iot | ||
websocket-as-promised | 595 | about 2 months ago | Promise-based W3C WebSocket wrapper: allows to use promises when connecting, disconnecting and messaging with WebSocket server |
faye-websocket-node | 611 | about 1 year ago | Standards-compliant WebSocket client and server |
ws-wrapper | 76 | 5 months ago | Lightweight WebSocket wrapper that provides a socket.io-like event-handler API along with Promise-based requests |
ws-server-wrapper | 18 | 5 months ago | Companion library for ws-wrapper for the server-side |
wspromisify | Makes WebSockets async/await ready with a lot of yummies | ||
uws | 8,095 | 6 days ago | Tiny WebSockets (access to the C++ library, µWebSockets, via Node.js) |
netflux | JavaScript client and server side transport API based on WebRTC & WebSocket | ||
Sockette | 2,454 | 10 months ago | WebSocket client that will automatically reconnect if the connection is lost |
rpc-websockets | 592 | about 2 months ago | JSON-RPC 2.0 implementation over WebSockets for Node.js and JavaScript/TypeScript |
soketi | 4,968 | 4 months ago | Just another simple, fast, and resilient open-source WebSockets server. Built on top of uWebSockets.js |
ZilaWS Server | A very easy-to-use and fast WS implementation with async/await eventhandlers and extendable classes | ||
Awesome WebSockets / Tools per Language / Perl | |||
Net::WebSocket::Server | Straightforward Perl WebSocket server with minimal dependencies | ||
AnyEvent::WebSocket::Server | WebSocket server for AnyEvent | ||
Mojolicious | An amazing real-time web framework built on top of the powerful Mojo web development toolkit and comes with websockets built in | ||
Dancer2::Plugin::WebSocket | add a websocket interface to your Dancer2 app | ||
Plack::App::WebSocket | WebSocket server as a plack/PSGI application | ||
Net::WebSocket | Super-flexible, minimal client & server library | ||
Awesome WebSockets / Tools per Language / PHP | |||
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 | ||
Php-websocket | 580 | about 2 years ago | Simple PHP WebSocket implementation for PHP 5.3 |
Phpws | 348 | over 5 years ago | PHP Web Socket server |
Sandstone | Microframework to build a real time Rest API | ||
Laravel Websockets | 5,077 | 10 months ago | A package for Laravel 5.7 and up that will get your application started with WebSockets in no-time! |
Awesome WebSockets / Tools per Language / Python | |||
Django Channels | Extends with WebSocket, long-poll HTTP, task offloading and other async support | ||
Websockets | ( ) - Websockets is a library for developing WebSocket servers and clients in Python 3 | ||
Ws4py | WebSocket package for Python | ||
Autobahn.ws | Open-source real-time framework for Web, Mobile & Internet of Things | ||
Tornado | Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed | ||
WebSocket Benchmarker | 30 | over 5 years ago | CLI tool for benchmarking WebSocket Servers |
Starlette | |||
Simple Http Server | 49 | 7 months ago | A simple HTTP server, including support of numerous websocket events like , etc. And even |
Picows | Ultra-fast WebSocket client and server library for asyncio | ||
Awesome WebSockets / Tools per Language / R | |||
httpuv | Provides low-level socket and protocol support for WebSocket (and HTTP) servers in R. Built on top of the and C libraries | ||
routr | A simple router for WebSocket (and HTTP) requests in R | ||
websocket | Provides a WebSocket client interface for R | ||
Awesome WebSockets / Tools per Language / Ruby | |||
AnyCable | Polyglot replacement for Ruby WebSocket servers with Action Cable protocol | ||
Em-websocket | 1,690 | about 3 years ago | EventMachine based WebSocket server |
Faye-websocket-ruby | 1,038 | about 1 year ago | Standards-compliant WebSocket client and server |
Iodine | 915 | 19 days ago | WebSocket/HTTP server with integrated pub/sub and optional Redis support |
Rage | 801 | about 2 months ago | Fast WebSocket server compatible with Action Cable |
Websocket-driver-ruby | 223 | 4 months ago | WebSocket protocol handler with pluggable I/O |
Websocket-ruby | 447 | 4 months ago | Universal Ruby library to handle WebSocket protocol |
Scorched | 275 | over 1 year ago | Light-weight web framework for Ruby |
Firehose | Build realtime Ruby web applications. Created by the fine folks at Poll Everywhere | ||
Slanger | 1,695 | over 2 years ago | Open Pusher implementation compatible with Pusher libraries |
render_sync | 1,401 | over 5 years ago | Real-time Rails Partials |
websocket-rails | 1,728 | 9 months ago | Plug and play websocket support for ruby on rails |
Awesome WebSockets / Tools per Language / Rust | |||
Actix | A Rust web framework with support for the Websocket Protocol | ||
Websocket Core | 13 | about 5 years ago | Rust Websocket server for periodic message broadcast |
Tungstenite | 1,924 | 6 days ago | Lightweight stream-based WebSocket implementation |
Tokio-Tungstenite | 1,875 | 17 days ago | Tokio binding for Tungstenite, the Lightweight stream-based WebSocket implementation |
Fastwebsockets | 872 | 4 months ago | A fast RFC6455 WebSocket server implementation |
Ratchet | 40 | 15 days ago | Ratchet is a fast, lightweight and fully asynchronous implementation of the WebSocket protocol with support for extensions and Deflate |
wtx | 196 | 6 days ago | Client and server with encryption support |
Awesome WebSockets / Tools per Language / Swift | |||
Vapor | A high level web framework for Swift | ||
WebsocketKit | 278 | about 2 months ago | A low level WebSocket client library built on SwiftNIO |
Awesome WebSockets / Tools per Language / Protocols and APIs | |||
RFC6455 | The WebSocket Protocol | ||
The WebSocket API | WebSockets - Living Standard | ||
Awesome WebSockets / GUI Testing Tools | |||
Cleora | A native macOS, iOS and iPadOS WebSocket client for testing and documenting APIs | ||
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 | ||
WebSocket King | A browser based WebSocket testing client that supports multiple simultanious connections, logs of incoming and outgoing messages, custom protocols and multiple projects | ||
Simple WebSocket Client | Simple WebSocket Client (Chrome Extension) | ||
Awesome WebSockets / Browser libraries | |||
WSGO | 3 | 5 months ago | 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 | ||
Awesome WebSockets / Visualization Tools | |||
Foxglove ws-protocol | 99 | 6 days ago | Websocket protocol for visualization of multimodal data |
Awesome WebSockets / Command-Line Interface (CLI) Tools | |||
claws | 302 | almost 2 years ago | Awesome WebSocket Client - an interactive command line client for testing websocket servers |
wscat | 2,247 | about 1 month ago | WebSocket cat |
wsta | 632 | about 6 years ago | A CLI development tool for WebSocket APIs |
ws | 426 | over 1 year ago | websocket command line tool |
wssh | 268 | about 1 year ago | wssh ("wish") is a command-line utility/shell for WebSocket inspired by netcat |
wsc | 51 | about 7 years ago | A tiny command line websocket client written in Go |
ws-cli | 17 | about 8 years ago | WebSocket Command Line Client written in Go |
ws-tool | 25 | about 3 years ago | A Develop Tool to Test WebSocket, Socket.IO, Stomp, Bayeux, HTTP, TCP, UDP, WebRTC, DNS API |
websocketd | 17,160 | 5 months ago | Turn any program that uses STDIN/STDOUT into a WebSocket server. Like inetd, but for WebSockets |
websocat | 7,144 | 8 days ago | Command-line client for WebSockets, like netcat (or curl) for ws:// with advanced socat-like functions |
iola | 153 | about 1 year ago | Socket client with Rest API (WebSocket, Socket.IO, TCP, Unix socket) |
Awesome WebSockets / Real Life Stories | |||
The top 10 realtime web apps | |||
Super sync sports | |||
Firepad | |||
JabbR | |||
Kaazing | |||
Taskade | Real-time collaborative task lists and outlines | ||
Awesome WebSockets / 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 | This article is part of the new OWASP Testing Guide v4 | ||
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 | ||
Awesome WebSockets / Theory / Articles & Papers | |||
An introduction to Websockets | Brief History of Real-Time Web Applications | ||
Introducing WebSockets: Bringing Sockets to the Web | The Problem: Low Latency Client-Server and Server-Client Connections | ||
About HTML5 WebSocket | About HTML5 WebSocket | ||
Node.js WebSocket | Finding the right Node.js WebSocket implementation | ||
Websockets 101 | Armin Ronacher's Thoughts and Writings (creator of Flask) | ||
Real-time Apps | Building Real-time Apps with Websockets & Server-Sent Events | ||
Real-Time Web by Paul Banks | The State of Real-Time Web in 2016 | ||
Are WebSockets the future? | WebSockets, caution required! | ||
MSDN Microsoft Blog | The Dangers of HTML5: WebSockets and Stable Standards | ||
Webpush Internet-Draft | Generic Event Delivery Using HTTP Push | ||
Full Stack Python | WebSockets on Python | ||
Do you really need WebSockets? | WebSockets explanation | ||
Be lazy and test your WebSocket APIs with Firecamp | How to test Websocket in a team | ||
Awesome WebSockets / Theory / Talks | |||
Initial Steps to Use Websocket-rails | This is the very initial steps to use websocket-rails | ||
Awesome WebSockets / Theory / Tutorials | |||
Honeybadger.IO | Building a simple websockets server from scratch in Ruby | ||
Engineyard | Getting Started with Ruby and WebSockets | ||
David Walsh | WebSocket and Socket.IO | ||
Implementing a WebSocket server with Node.js | |||
Lostmoa | A collection of Django Channels WebSocket tutorials | ||
GeniePy | How to set up WebSockets in Starlette | ||
Awesome WebSockets / Theory / Books | |||
WebSocket | Lightweight Client-Server Communications. Andrew Lombardi | ||
The Definitive Guide to HTML5 WebSocket | Build Real-Time Applications with HTML5. By Vanessa Wang, Frank Salim, and Peter Moskovits. Source Code | ||
High Performance Browser Networking | High Performance Browser Networking: WebSocket | ||
Awesome WebSockets / Theory / Sites | |||
WebSocket ORG | The one-stop-shop for all your websocket needs | ||
WebSockets MDN | WebSockets Mozilla Developer Network (MDN) |