HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
gorilla
websocket
Go2014–2026
gorilla / websocket

websocket

Package gorilla/websocket is a fast, well-tested and widely used WebSocket implementation for Go.

18Distinct people
21Mentions
0Explicit recommenders
24.9KGitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

Package gorilla/websocket is a fast, well-tested and widely used WebSocket implementation for Go.

GitHub

Where it is used

No documented product use was verified in the last source check.

What people are saying

No recommendation phrase was found in the indexed comments.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

Mentioned in the same Hacker News threads. That is not proof they are substitutes.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 12:54:37 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by year21 dated mentions

Observed mentions: 2014-05-01 03:56:22 UTC to 2026-03-19 14:15:56 UTC.

012342014-01-01 00:00:00 UTC to 2015-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments20142015-01-01 00:00:00 UTC to 2016-01-01 00:00:00 UTC (exclusive): 3 mentions; 0 submissions, 3 comments2016-01-01 00:00:00 UTC to 2017-01-01 00:00:00 UTC (exclusive): 4 mentions; 0 submissions, 4 comments2017-01-01 00:00:00 UTC to 2018-01-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments2018-01-01 00:00:00 UTC to 2019-01-01 00:00:00 UTC (exclusive): 4 mentions; 0 submissions, 4 comments2019-01-01 00:00:00 UTC to 2020-01-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments2020-01-01 00:00:00 UTC to 2021-01-01 00:00:00 UTC (exclusive): 1 mentions; 1 submissions, 0 comments20202021-01-01 00:00:00 UTC to 2022-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2022-01-01 00:00:00 UTC to 2023-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2023-01-01 00:00:00 UTC to 2024-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2024-01-01 00:00:00 UTC to 2025-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-01-01 00:00:00 UTC to 2026-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2026-01-01 00:00:00 UTC to 2027-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments. Incomplete calendar period.2026*

* An incomplete calendar period is marked with an outlined bar. Its count is not directly comparable with a full period.

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
20142014-01-01 00:00:00 UTC2015-01-01 00:00:00 UTC101
20152015-01-01 00:00:00 UTC2016-01-01 00:00:00 UTC303
20162016-01-01 00:00:00 UTC2017-01-01 00:00:00 UTC404
20172017-01-01 00:00:00 UTC2018-01-01 00:00:00 UTC202
20182018-01-01 00:00:00 UTC2019-01-01 00:00:00 UTC404
20192019-01-01 00:00:00 UTC2020-01-01 00:00:00 UTC202
20202020-01-01 00:00:00 UTC2021-01-01 00:00:00 UTC110
20212021-01-01 00:00:00 UTC2022-01-01 00:00:00 UTC101
20222022-01-01 00:00:00 UTC2023-01-01 00:00:00 UTC000
20232023-01-01 00:00:00 UTC2024-01-01 00:00:00 UTC101
20242024-01-01 00:00:00 UTC2025-01-01 00:00:00 UTC000
20252025-01-01 00:00:00 UTC2026-01-01 00:00:00 UTC101
2026 (partial)2026-01-01 00:00:00 UTC2027-01-01 00:00:00 UTC101

What Hacker News says

21 sources
Host your own broadcast, with a minimal stack: - A domain name - A VPS with a public IP (reference: indep.stream runs on a $4/month 512MB DigitalOcean droplet with 2G memory swap) - UDP port 50000 open on the VPS firewall - Nginx or Caddy + TLS certificate (Let's Encrypt / Certbot — free) - A Chromium-based browser to watch or broadcast (Chrome, Edge, Brave — Firefox not supported yet) - Rust 1.83+ and Go 1.21+ installed on the server. (Built on: str0m (Rust WebRTC engine) github.com/algesten/str0m , tokio + axum (Rust async HTTP), tokio.rs, gorilla/websocket (Go WebSocket) github.com/gorilla/websocket Choose to be sovereign if you want to, host your stream and it will be under your name or corp. Sponsored by xlovecam. If you are here for ad hominem about the sponsor, your comment is not welcome.
In No Twitch, No Middlemen. Host Your Own Livestream
Awesome project which I first thought might have something to do with microsft .exe format but not that big of a deal and I find this project really cool and I had thought about similar project like these so kudos that you built something like this! I mean it and I wish the best of luck for the project That being said, I tried to look at it for asap golang project deployments and I am the creator of https://spocklet-pomodo.hf.space/ a single main.go + single dep multiplayer pomodoro (please note that it was one shotted out of curiosity and also frustration as https://cuckoo.team would sometimes glitch for me) That being said, I face the issue where I can't have a go.mod or run go mod tidy because I face this error exedev@crimson-cobra:~$ go mod tidy go: finding module for package github.com/gorilla/websocket go: pomodo imports github.com/
Read the rest
gorilla/websocket: module github.com/gorilla/websocket: Get "https://proxy.golang.org/github.com/gorilla/websocket/@v/lis...": dial tcp: lookup proxy.golang.org on 1.1.1.1:53: read udp 10.42.0.45:33739->1.1.1.1:53: i/o timeout Hope that the project fixes this and wishing best of luck to the project. I am a little busy right now with studies but your idea truly inspired me and perhaps I want to create a similar thing or collaborate on it with you too so I will join discord hopefully sooner than later. I am looking further into it and seeing if I can fix that error as I would love to host some exe.dev's services and wishing the best of luck for the project and hope that it becomes sustainable enough. Out of curiosity, if I may ask, what is the tech stack behind this which generates the vm's. Is it libvirt or firecracker perhaps? For my own use cases, I recently rediscovered incus and even ran it on cachyos on my desktop to try it out and there were some hiccups partially because I was running it on non standard debian/ubuntu but I am overall very pleasant with incus but still, I am interested in what tech stack you used so please discuss!! Also what cloud provider are you using. Pro tip but if you are looking for something cheap, either go with ovh or upcloud. I really really love hetzner a lot too. (Hey hetzner_OL if you are reading this, love hetzner, have a nice day and hope your christmas was good:) But still hetzner is a little admittedly more strict than ovh but maybe hetzner can respond to it as I know that their policy can ban accounts if someone abuses and considering that you provide compute (to even free) chances of abuse can rise but overall hetzner's the cheapest so I hope hetzner team might make an special exception/response to your post/my comment. I am imagining a github private action which ssh's into this and then updates and runs a simple shell script which can be a reinstall state every time someone updates something in git to get git-ops style workflow. If someone implements it for exe.dev, just credit me :) (if you so wish) ` An amazing product overall. 7/10 due to that one hiccup which saddened me a bit (but which I have faith can be fixed) but its a 9-10/10 potential and that means a lot and a 7/10 at launch is pretty good Please just tell me every decision/question I had in depth since I love details about projects like these ^^ Another minor suggestion I can have is having asciinema gif too to showcase what it does for some people. To me I only understood to run the command ssh exe.dev which then helped me learn but the only way I understood what exe.dev does beforehand was reading the comments on HN An asciinema can go a long way in this journey, perhaps, let me know your thoughts. And have a nice day! One thing I am wondering tho is if you are gonna open source the project, one project which feels similar to your project which is open source is this https://github.com/ekzhang/ssh-hypervisor that runs on top of firecracker
In Exe.dev
> The package-name is just a unique name; the only thing it refers to is the package. Not quite. In go, you import 3rd party packages via a URL where a VCS can find them, eg.: import "github.com/gorilla/websocket" The package name is thus both, an unique name for the package AND a location where the toolchain can find and fetch it.
In Go modules and the domain expiry problem
While I didn't get to see what the site originally looked like. If it was just 'submit anonymous comments that websocket subscribers can see', there's a golang example leveraging the gorilla/websocket package that does just that[0]. Edit: I see from the OP's link to the github project that persisting the chats to a DB was included with this. [0] https://github.com/gorilla/websocket/tree/master/examples/ch...
In Show HN: I learnt how to use WebSockets, made something beautiful/terrible
lab0·Aug 9, 2020Submission

How to understand gorilla/WebSocket lib?

i want to understand gorilla/websocket library. but i was wondering should i start with current code : https://github.com/gorilla/websocket or frist code(initial code): https://github.com/gorilla/websocket/tree/273ecadfcae3306e1943ac6d4160ef02cac48247 because was more simple then current code. What is the easy way to understand the source code? you can take the question as general question not this library only. thanks
1 points · Open discussion
I updated the comparison, I think you'll find it more compelling in terms of stability and performance. To summarize, they're about equal in terms of performance but I'd argue my library wins on stability and maintainability as the minimal API enables a tiny codebase, which means less docs, less tests and most importantly, less bugs. Furthermore, the future of gorilla/websocket is uncertain. https://github.com/gorilla/websocket/issues/370 https://github.com/nhooyr/websocket#gorillawebsocket
In Show HN: A minimal and idiomatic WebSocket library for Go
Yes, code intelligence (go-to-definition, find references, hovers, etc.) on Sourcegraph Server is a paid upgrade for all languages. But you can try/use it for free on open-source projects using our Chrome extension (to get it on code you view on GitHub) at https://chrome.google.com/webstore/detail/sourcegraph-for-gi... or on our public site directly at https://sourcegraph.com/github.com/gorilla/websocket/-/blob/... (for example).
In Sourcegraph Server 2.4: free, powerful search for private code
Rather than use a full-fledged framework, I would recommend combining orthogonal packages such as - julienschmidt/httprouter [1] for routing, - jmoiron/sqlx [2] for SQL access, and - gorilla/websocket [3] for websockets sqlx isn't an ORM; it's more a convenience wrapper around the standard library's database/sql package. gorm is the nicest ORM I've found, but I think even the well-written ORM packages are unnatural to use because of restrictions in Go's type system. (Sorry if this isn't the kind of answer you were hoping for.) [1] https://github.com/julienschmidt/httprouter [2] https://github.com/jmoiron/sqlx [3] https://github.com/gorilla/websocket
In Show HN: A simple Go web server with logging, tracing, health check
Sourcegraph CEO here. Thanks for posting this! And thanks to Microsoft, Codenvy, RedHat, etc., for their foundational work on LSP. For the curious: we have links to more language server implementations at http://langserver.org. And if you want to see what real LSP requests/responses look like, go to https://sourcegraph.com/github.com/gorilla/websocket/-/blob/... and hover/click on tokens with the JS console open. Happy to answer any questions about LSP or our usage of it.
In How Sourcegraph Scales with the Language Server Protocol
Sourcegraph CEO here. We 100% agree, and that's why we built Sourcegraph. Check out our roadmap at https://sourcegraph.com/plan. And try browsing code on Sourcegraph: https://sourcegraph.com/github.com/gorilla/websocket/-/blob/... (we support other languages as well). Right-click on "parseURL" and choose "Find All References". If you click on "HasPrefix" a few lines below, you'll see a cross-repo jump (and the right-click menu lets you see global/cross-repo references). Sign up at https://sourcegraph.com to get it on your own GitHub repos.
In Show HN: GitPlex – A new Git repo management server with code review

Showing the 15 most recent of 21 sources. Enable JavaScript to search and browse every indexed mention.

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.