awesome-websockets
A curated list of Websocket libraries and resources.
AI summary
WebSocket toolkit
A curated list of WebSockets technologies and resources for building real-time communication channels.
- stars
- 1.6K
- forks
- 171
- watching
- 47
- awesome lists
- 2
- entries
- 178
What's in the list
178 links in 30 sections, with live GitHub stats.activeno commit in 2y
Tools per Language / Agnostic
Centrifugo
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
Apache WebSocket module
MinnowServer
A super small and fast embedded HTTP(S) WebSocket server
gwsocket
Fast, standalone, language-agnostic WebSocket server RFC6455 compliant
Tools per Language / Ballerina
- Ballerina WebSocket Module
Tailored WebSocket client and server implementations in Ballerina, designed and optimized for seamless integration
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
C library for easy WebSockets server
Websocket
Websocket server written in C
- 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
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
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
Tools per Language / C++
Websocketpp
C++ Websocket client/server library
- QtWebSockets
The QtWebSockets module is an add-on for the Qt5 library
Beast
HTTP and WebSocket built on Boost.Asio in C++11
µWebSockets
Highly scalable WebSocket server 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
- UEWebsocket
Unreal engine 4 websocket plugin for both c++ and blueprint developer
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
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
WebSocket RPC library for .NET with auto JavaScript client code generation, supporting ASP.NET Core
NetGain
A high performance websocket server library powering Stack Overflow
websocket-manager
Real-Time library for ASP .NET Core
WebSockets
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
A simple, zero-dependency WebSocket server for Unity
websocket-sharp
A C# implementation of the WebSocket protocol client and server
Tools per Language / Erlang
Sockjs-erlang
WebSocket emulation - Erlang server
Cowboy
Small, fast, modular HTTP server written in Erlang
n2o
Erlang web server on websockets
Kraken
Distributed Pubsub Server for Realtime Apps
Tools per Language / Go
Gorilla Websocket
WebSocket implementation for Go
- Websocket
Package Websocket implements a client and server for the WebSocket protocol as specified in RFC 6455
Ws
Tiny WebSocket library for Go
1m-go-websockets
Handling 1M websockets connections in Go
- gotify/server
A simple server for sending and receiving messages in real-time per web socket
nhooyr/websocket
A minimal and idiomatic WebSocket library for Go
Centrifuge
Real-time messaging library for Go with scalability in mind
Tools per Language / Haskell
Websockets
A Haskell library for creating WebSocket-capable servers
n2o
Haskell implementation of Erlang's n2o - web server on websockets
Tools per Language / Java VM
Sente
Realtime web comms for Clojure/Script
Chord
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
Barebones WebSocket client and server implementation written in 100% Java
Atmosphere
Realtime Client Server Framework for the JVM, supporting WebSockets with Cross-Browser Fallbacks
Webbit
Java event based WebSocket and HTTP server
nv-websocket-client
High-quality WebSocket client implementation in Java which
Scarlet
Tinder's Retrofit inspired WebSocket client for Kotlin, Java, and Android
- Play
The high velocity web framework for Java and Scala
Finagle-websocket
Finagle Websocket clients and servers
Tools per Language / Julia
HTTP.jl
HTTP library for Julia with support on Websockets
WebSockets.jl
A WebSockets library for Julia
Tools per Language / Node.js
- Socket.IO
Featuring the fastest and most reliable real-time engine
Nodejs-websocket
Node.js module for websocket server and client
WebSocket-Node
WebSocket Implementation for Node.JS (Draft -08 through the final RFC 6455)
Sockjs-node
WebSocket emulation - Node.js server
Ws
: 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
Promise-based W3C WebSocket wrapper: allows to use promises when connecting, disconnecting and messaging with WebSocket server
faye-websocket-node
Standards-compliant WebSocket client and server
ws-wrapper
Lightweight WebSocket wrapper that provides a socket.io-like event-handler API along with Promise-based requests
ws-server-wrapper
Companion library for ws-wrapper for the server-side
- wspromisify
Makes WebSockets async/await ready with a lot of yummies
uws
Tiny WebSockets (access to the C++ library, µWebSockets, via Node.js)
- netflux
JavaScript client and server side transport API based on WebRTC & WebSocket
Sockette
WebSocket client that will automatically reconnect if the connection is lost
rpc-websockets
JSON-RPC 2.0 implementation over WebSockets for Node.js and JavaScript/TypeScript
soketi
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
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
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
Simple PHP WebSocket implementation for PHP 5.3
Phpws
PHP Web Socket server
- Sandstone
Microframework to build a real time Rest API
Laravel Websockets
A package for Laravel 5.7 and up that will get your application started with WebSockets in no-time!
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
CLI tool for benchmarking WebSocket Servers
Simple Http Server
A simple HTTP server, including support of numerous websocket events like , etc. And even
- Picows
Ultra-fast WebSocket client and server library for asyncio
Tools per Language / R
Tools per Language / 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
Iodine
WebSocket/HTTP server with integrated pub/sub and optional Redis support
Rage
Fast WebSocket server compatible with Action Cable
Websocket-driver-ruby
WebSocket protocol handler with pluggable I/O
Websocket-ruby
Universal Ruby library to handle WebSocket protocol
Scorched
Light-weight web framework for Ruby
- Firehose
Build realtime Ruby web applications. Created by the fine folks at Poll Everywhere
Slanger
Open Pusher implementation compatible with Pusher libraries
render_sync
Real-time Rails Partials
websocket-rails
Plug and play websocket support for ruby on rails
Tools per Language / Rust
- Actix
A Rust web framework with support for the Websocket Protocol
Websocket Core
Rust Websocket server for periodic message broadcast
Tungstenite
Lightweight stream-based WebSocket implementation
Tokio-Tungstenite
Tokio binding for Tungstenite, the Lightweight stream-based WebSocket implementation
Fastwebsockets
A fast RFC6455 WebSocket server implementation
Ratchet
Ratchet is a fast, lightweight and fully asynchronous implementation of the WebSocket protocol with support for extensions and Deflate
wtx
Client and server with encryption support
Tools per Language / Swift
- Vapor
A high level web framework for Swift
WebsocketKit
A low level WebSocket client library built on SwiftNIO
Tools per Language / Protocols and APIs
- RFC6455
The WebSocket Protocol
- The WebSocket API
WebSockets - Living Standard
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)
Browser libraries
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
Foxglove ws-protocol
Websocket protocol for visualization of multimodal data
Command-Line Interface (CLI) Tools
claws
Awesome WebSocket Client - an interactive command line client for testing websocket servers
wscat
WebSocket cat
wsta
A CLI development tool for WebSocket APIs
ws
websocket command line tool
wssh
wssh ("wish") is a command-line utility/shell for WebSocket inspired by netcat
wsc
A tiny command line websocket client written in Go
ws-cli
WebSocket Command Line Client written in Go
ws-tool
A Develop Tool to Test WebSocket, Socket.IO, Stomp, Bayeux, HTTP, TCP, UDP, WebRTC, DNS API
websocketd
Turn any program that uses STDIN/STDOUT into a WebSocket server. Like inetd, but for WebSockets
websocat
Command-line client for WebSockets, like netcat (or curl) for ws:// with advanced socat-like functions
iola
Socket client with Rest API (WebSocket, Socket.IO, TCP, Unix socket)
Real Life Stories
- Taskade
Real-time collaborative task lists and outlines
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
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
Theory / Talks
- Initial Steps to Use Websocket-rails
This is the very initial steps to use websocket-rails
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
- Lostmoa
A collection of Django Channels WebSocket tutorials
- GeniePy
How to set up WebSockets in Starlette
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
Theory / Sites
- WebSocket ORG
The one-stop-shop for all your websocket needs
- WebSockets MDN
WebSockets Mozilla Developer Network (MDN)
Nothing in this list matches your filter.
Featured in 2 awesome lists
Each link jumps to the spot where the list mentions awesome-websockets.