With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js. Learn more →
Top 23 Websocket Open-Source Projects
-
Nest
A progressive Node.js framework for building efficient, scalable, and enterprise-grade server-side applications with TypeScript/JavaScript 🚀
-
SurveyJS
Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App. With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.
-
insomnia
The open-source, cross-platform API client for GraphQL, REST, WebSockets, SSE and gRPC. With Cloud, Local and Git storage.
-
websocketd
Turn any program that uses STDIN/STDOUT into a WebSocket server. Like inetd, but for WebSockets.
-
Thingsboard
Open-source IoT Platform - Device management, data collection, processing and visualization.
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
gdbgui
Browser-based frontend to gdb (gnu debugger). Add breakpoints, view the stack, visualize data structures, and more in C, C++, Go, Rust, and Fortran. Run gdbgui from the terminal and a new tab will open in your browser.
-
Centrifugo
Scalable real-time messaging server in a language-agnostic way. Self-hosted alternative to Pubnub, Pusher, Ably. Set up once and forever.
-
C++ REST SDK
The C++ REST SDK is a Microsoft project for cloud-based client-server communication in native code using a modern asynchronous C++ API design. This project aims to help C++ developers connect to and interact with services.
-
websocat
Command-line client for WebSockets, like netcat (or curl) for ws:// with advanced socat-like functions
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
Project mention: Creating a Pokémon guessing game using Supabase, Drizzle, and Next.js in just 2 hours! | dev.to | 2024-04-23Setting up Supabase Create a new Supabase project, and get the connection string for the database from settings > database.
When using the NestJS framework, sometimes you may need to change some default timeout. You can define them just like you'd do in a plain Node.js HTTP server like so:
Use tools like Postman or Insomnia to test the API endpoints and ensure they behave as expected.
Project mention: Empowering Web Privacy with Rust: Building a Decentralized Identity Management System | dev.to | 2024-04-09Actix Web Documentation: Detailed documentation on using Actix-web, including examples and best practices for building web applications with Rust.
They use (uWebSockets)[https://github.com/uNetworking/uWebSockets], which was written in C++, but has an interface to use in NodeJS. It's been really performant for me in my simple tests compared to other popular websocket libs that slow down fairly quickly.
Project mention: ThingsBoard Microservices Installation Update Problem | /r/ThingsBoard | 2023-11-29Until recently I was still using TB v3.2.1, now I've set about updating the installation to the latest version. I proceeded as described at https://github.com/thingsboard/thingsboard/tree/master/docker:
> I'm a big fan of https://nodebb.org/
TIL to what shit Netgate moved pfSense forums to. I'm glad you are fine with it, but not only my FullHD monitor is not a smartphone, so I don't need 400% fonts on everything (and post dates on the faaaaar right clearly shows nobody ever even used the forum) and most importantly - search doesn't work. It's not like the previous forum had a good search, but at least it worked.
Bonus point: try to Ctrl+mousewheel on any NodeBB (including the official one).
Project mention: WalletConnect Auth: how to connect a crypto wallet to iOS Swift DApp | dev.to | 2024-01-04The easiest way is to use Starscream SDK of 3.1.2 version which completley complies with their WebSocketConnecting protocol. (yep, it’s not new and may have some issues but it works)
Project mention: WebSockets vs. Server-Sent-Events vs. Long-Polling vs. WebRTC vs. WebTransport | news.ycombinator.com | 2024-03-20Hello, I am author of https://github.com/centrifugal/centrifugo. Our users can choose from WebSocket, EventSource, WebTransport (experimental stabilize in the future). WebRTC is out of scope as the main purpose is central server based real-time json/binary messaging, and WebRTC makes things much more complex since it shines for peer-to-peer and rich media communications.
What I'd like to add is that Centrifugo also supports HTTP-streaming – not mentioned by the OP – but this is a transport which has advantages over Eventsource - like possibility to send POST body on initial request from web browser (with SSE you can not), it supports binary, and with Readable Streams browser API it's widely supported by modern browsers.
Another thing I'd like to mention about Centrifugo - it supports bidirectional WebSocket fallbacks with EventSource and HTTP-streaming, and does this without sticky sessions requirement. I guess nobody else have this at this point. See https://centrifugal.dev/blog/2022/07/19/centrifugo-v4-releas.... Which solves one more practical concern. Sticky sessions is an optimization in Centrifugo case, not a requirement.
If you are interested in topic, we also have a post about WebSocket scalability - https://centrifugal.dev/blog/2020/11/12/scaling-websocket - it covers some design decisions made in Centrifugo.
Project mention: What is the industry standard today in C++ to deploy REST microservices in Kubernetes? | /r/cpp | 2023-09-06My favourite was Microsoft's cpprestsdk, but for some reason now is in maintenance mode, I don't know why, so it's hard to suggest it for new projects. A nice alternative is restc-cpp, that's has a good high-level interface, if this is what you want.
Project mention: Any fun/interesting custom scripts or services being ran on your setup? | /r/homelab | 2023-05-16I do everything through a web browser -- I run an Arch VM with a modified version of ttyd running as a systemd service.
If you have never heard of Soketi, to give you a brief overview, it is a WebSocket server that was built on top of uWebSockets.js and has great compatibility with Pusher Protocol.
Project mention: Show HN: ScaleSocket – Turn any script into a multiplayer WebSocket server | news.ycombinator.com | 2023-09-20It's similar to running netcat in server mode, wrapping a script. It's even closer to doing that using websocat [1], whereby one does not have to do the websocket header juggling.
The main difference is that while netcat or websocat will spawn a new process for each connecting client, ScaleSocket has a concept of rooms (channels). For a room, a process is spawned once only. All clients connecting to the same room are routed to the same process. This is not straight forward to do using the forementioned tools.
There's a small comparison page [2] where I have mentioned some alternative tools.
[1] https://github.com/vi/websocat
Project mention: Connecting to PHP using Apache's mod_proxy_wstunnel without using 3rd Party APIs | /r/codehunter | 2023-06-071) Do we must need to use some 3rd Party APIs or Libraries like Ratchet, PHP-Push-WebSocket or PHP WebSocket to enable PHP to communicate over WebSocket protocol?
Project mention: Is it a good practice to store web sockets connections on redis? | /r/node | 2023-06-24If redis doesn't satisfy your requirements or you're unable to make it work using adaptor, SocketCluster is a great package for this https://socketcluster.io/
Project mention: Need advice on what to learn in order to develop a multiplayer web-based game. | /r/webdev | 2023-07-06If you don't want to dive deep into backend then https://colyseus.io/ might also be an option.
Websockets related posts
- Show HN: Kiwi – End-to-End Kafka Subscriptions with WebAssembly
- AnyCable v1.5: socketio-like pub/sub with delivery and performance guaranteed
- Pushpin: Proxy server that pins connections open to build realtime API endpoints
- PairDrop – Local file sharing in the browser
- Pipexec – Handling pipe of commands like a single command
- Live Streaming from Unity - Integrated Chat (Part 4)
- Edit This Blog Post
-
A note from our sponsor - SurveyJS
surveyjs.io | 24 Apr 2024
Index
What are some of the best open-source Websocket projects? This list will help you:
Project | Stars | |
---|---|---|
1 | supabase | 65,456 |
2 | Nest | 64,263 |
3 | insomnia | 33,036 |
4 | actix-web | 20,200 |
5 | websocketd | 17,080 |
6 | µWebSockets | 16,699 |
7 | Thingsboard | 15,595 |
8 | nodeBB | 13,886 |
9 | noVNC | 10,919 |
10 | gdbgui | 9,686 |
11 | starlette | 9,491 |
12 | Starscream | 8,120 |
13 | Centrifugo | 7,888 |
14 | C++ REST SDK | 7,800 |
15 | ttyd | 7,310 |
16 | uWebSockets.js | 7,252 |
17 | cowboy | 7,162 |
18 | websocat | 6,491 |
19 | Ratchet | 6,148 |
20 | SocketCluster | 6,109 |
21 | python-binance | 5,788 |
22 | colyseus | 5,496 |
23 | websockets | 4,968 |
Sponsored