Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR. Learn more →
Top 23 Go WebSocket Projects
-
Project mention: Go vs Node.js vs PHP: Which Framework Outperforms the Other in Speed and Efficiency? | dev.to | 2025-01-20
echo vs. fasthttp Selection: If the echo framework has been decided to be used, it is not recommended to consider fasthttp anymore. Although echo supported fasthttp in version 2, the author of echo explained the reasons for giving up in https://github.com/labstack/echo/issues/665, mainly to maintain the simplicity of the framework and community compatibility, and to use the standard library as much as possible. This enables echo to better integrate with the community ecosystem while maintaining high performance.
-
CodeRabbit
CodeRabbit: AI Code Reviews for Developers. Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR.
-
Iris
The fastest HTTP/2 Go Web Framework. New, modern and easy to learn. Fast development with Code you control. Unbeatable cost-performance ratio :rocket:
Gerasimos Maropoulos is the author of the Iris web framework, a highly efficient and feature-rich web framework for the Go programming language. He is well-known in the programming community for his contributions to web development and his expertise in the Go language. Gerasimos has authored numerous online articles and tutorials that help developers understand and leverage the power of Go for building scalable and high-performance web applications. His work on Iris has made it one of the most popular web frameworks in the Go ecosystem, known for its simplicity, speed, and extensive feature set.
-
Project mention: Turn Your Android Tablet into an IDE with VSCode and Nix | news.ycombinator.com | 2024-05-14
I use nix-on-droid to keep a dev environment on my phone. Sometimes I have an hour or two to kill in the university library. I use their computers' screens and keyboards, but I'm coding on my phone through a browser tab and https://github.com/yudai/gotty
Beats the hell out of trying to be productive on Windows.
-
Centrifugo
Scalable real-time messaging server in a language-agnostic way. Self-hosted alternative to Pubnub, Pusher, Ably. Set up once and forever.
Project mention: Centrifugo v6 released – major update of scalable WebSocket server written in Go | news.ycombinator.com | 2025-01-16Hi everyone!
I'd like to share that we've just released Centrifugo v6 - a major update of scalable WebSocket server. The release addresses some usability pain points and adds nice features and more observability.
Centrifugo is an open-source standalone server written in Go – https://github.com/centrifugal/centrifugo. Centrifugo can instantly deliver messages to application online users connected over supported transports (WebSocket, HTTP-streaming, Server-Sent Events (EventSource), GRPC, WebTransport). Centrifugo has the concept of a channel – so it's a user-facing PUB/SUB server. Everything implemented in a language-agnostic way – so Centrifugo can be used in combination with any frontend or backend stack.
These days we also provide Centrifugo PRO version – and trying to find a balance to be sustainable.
The server is based on the open-source Centrifuge library - https://github.com/centrifugal/centrifuge, so many improvements mentioned in Centrifugo v6 release blog post (even those for Centrifugo PRO) may be used just as a library in Go application.
We provide real-time SDKs for popular client environments – for browser and mobile development – they connect to both Centrifuge library based servers and Centrifugo server.
Generally Centrifugal ecosystem provides a good alternative to Socket.IO and cloud services like Pusher.com and Ably.com
Will be happy to answer on any questions
-
-
Project mention: Mercure: A WebSocket alternative for server-sent events | news.ycombinator.com | 2025-01-01
The site offers a little more detail:
https://mercure.rocks/
Basically its server sent events with some stuff on top:
https://developer.mozilla.org/en-US/docs/Web/API/Server-sent...
One big benefit of SSE is that you can put them behind a CDN, making scaling a lot easier. No idea about what Mercure brings there, though.
-
Project mention: List of ngrok/Cloudflare Tunnel alternatives and other tunneling software and services. Focus on self-hosting. | dev.to | 2024-04-30
gost - Looks like a comprehensive option. TCP and UDP tunneling. TAP/TUN devices. Load balancing. Web API. Written in Go.
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
-
-
As a regular Go user, I agree with this take. Though the tools exist, error wrapping and checking (with errors.Is and so on) is actually pretty rare in my experience.
Positive example of good and appropriate usage here: https://github.com/coder/websocket/blob/master/internal/exam...
-
-
glider
glider is a forward proxy with multiple protocols support, and also a dns/dhcp server with ipset management features(like dnsmasq). (by nadoo)
-
-
Project mention: AnyCable for Ruby on Rails: How Does it Improve over Action Cable? | dev.to | 2024-05-16
The AnyCable WebSocket Server was created to combine the beauty of Action Cable with the performance benefits gained from Golang. AnyCable handles WebSockets on a different server called AnyCable-Go, effectively reducing the burden on your primary web application.
-
-
gev
🚀Gev is a lightweight, fast non-blocking TCP network library / websocket server based on Reactor mode. Support custom protocols to quickly and easily build high-performance servers.
-
beaver
💨 A real time messaging system to build a scalable in-app notifications, multiplayer games, chat apps in web and mobile apps.
-
gws
simple, fast, reliable websocket server & client, supports running over tcp/kcp/unix domain socket. keywords: ws, proxy, chat, go, golang...
-
centrifuge
Real-time messaging library for Go. The simplest way to add feature-rich and scalable WebSocket support to your application. The core of Centrifugo server.
Project mention: Centrifugo v6 released – major update of scalable WebSocket server written in Go | news.ycombinator.com | 2025-01-16Hi everyone!
I'd like to share that we've just released Centrifugo v6 - a major update of scalable WebSocket server. The release addresses some usability pain points and adds nice features and more observability.
Centrifugo is an open-source standalone server written in Go – https://github.com/centrifugal/centrifugo. Centrifugo can instantly deliver messages to application online users connected over supported transports (WebSocket, HTTP-streaming, Server-Sent Events (EventSource), GRPC, WebTransport). Centrifugo has the concept of a channel – so it's a user-facing PUB/SUB server. Everything implemented in a language-agnostic way – so Centrifugo can be used in combination with any frontend or backend stack.
These days we also provide Centrifugo PRO version – and trying to find a balance to be sustainable.
The server is based on the open-source Centrifuge library - https://github.com/centrifugal/centrifuge, so many improvements mentioned in Centrifugo v6 release blog post (even those for Centrifugo PRO) may be used just as a library in Go application.
We provide real-time SDKs for popular client environments – for browser and mobile development – they connect to both Centrifuge library based servers and Centrifugo server.
Generally Centrifugal ecosystem provides a good alternative to Socket.IO and cloud services like Pusher.com and Ably.com
Will be happy to answer on any questions
-
-
-
bifrost
Modular networking for Go with pluggable transports, RPC, WebRTC, WebAssembly support. (by aperturerobotics)
-
-
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
Go WebSocket discussion
Go WebSocket related posts
-
Creating a WebSocket Server in Go with Gorilla
-
SimplySocket: A Lightweight WebSocket Wrapper for Go
-
Self-Hosting Applications on Raspberry Pi 5
-
Centrifugo – self-hosted real-time messaging solution
-
WebSockets vs. Server-Sent-Events vs. Long-Polling vs. WebRTC vs. WebTransport
-
gws v1.6.13 release (high-performance websocket server & client )
-
Centrifugo v5.1.0 released, with new powers for real-time messaging tasks, now with proxy GRPC subscription streams – similar to WebSocketd but over the network
-
A note from our sponsor - CodeRabbit
coderabbit.ai | 9 Feb 2025
Index
What are some of the best open-source WebSocket projects in Go? This list will help you:
# | Project | Stars |
---|---|---|
1 | Echo | 30,416 |
2 | Iris | 25,353 |
3 | gotty | 18,902 |
4 | Centrifugo | 8,701 |
5 | ws | 6,194 |
6 | Mercure | 4,789 |
7 | gost | 4,655 |
8 | goflyway | 4,307 |
9 | websocket | 4,130 |
10 | melody | 3,829 |
11 | glider | 3,248 |
12 | httpexpect | 2,586 |
13 | AnyCable | 1,985 |
14 | go-streams | 1,975 |
15 | gev | 1,729 |
16 | beaver | 1,556 |
17 | gws | 1,490 |
18 | centrifuge | 1,139 |
19 | gosumemory | 706 |
20 | neffos | 613 |
21 | bifrost | 539 |
22 | tran | 421 |
23 | microservices | 306 |