libwebsockets
RingSocket
Our great sponsors
libwebsockets | RingSocket | |
---|---|---|
12 | 1 | |
4,550 | 34 | |
1.7% | - | |
8.6 | 4.8 | |
2 days ago | 4 months ago | |
C | C | |
GNU General Public License v3.0 or later | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
libwebsockets
- FLaNK Weekly 08 Jan 2024
-
Libwebsockets
This is just the endemic result of C++ lacking a package manager.
Every library starts out small, adds its own vendored utilities, adds its own dependencies, and eventually becomes boost.
To be fair to this project, theyve worked quite hard to make the library consumable by others… but yes, its hard to look at the code like https://github.com/warmcat/libwebsockets/blob/50ba61082dc40b...
…and not go… really? As part of the core of libwebsocket?
When you read the justification it’s mostly “well we have a good framework now, so why not use it for other things too?”
C++ life.
/shrug
- Beej updated the classic Linux network programming guide
-
Hacker News top posts: Sep 7, 2021
Libwebsockets a powerful and lightweight pure C library\ (48 comments)
- Libwebsockets a powerful and lightweight pure C library
RingSocket
-
Libwebsockets a powerful and lightweight pure C library
I wrote something similar, except instead of providing a library (which Libwebsockets already does a fine job of), I created a server/framework accepting shared objects as backend plugins running as dedicated threads interacting with spsc lockless ringbuffers. In other words, more or less the inverse of a library: https://github.com/wbudd/ringsocket
I haven't been putting much time into it anymore lately, but I intend to create a bunch of language bindings for it soon so you can write plugins in other languages too such as Python, C++, Rust, etc. Should be interesting.
What are some alternatives?
WebSocket++ - C++ websocket client/server library
µWebSockets - Simple, secure & standards compliant web server for the most demanding of applications
libcurl - A command line tool and library for transferring data with URL syntax, supporting DICT, FILE, FTP, FTPS, GOPHER, GOPHERS, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, MQTT, POP3, POP3S, RTMP, RTMPS, RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS, TELNET, TFTP, WS and WSS. libcurl offers a myriad of powerful features
Boost.Beast - HTTP and WebSocket built on Boost.Asio in C++11
Mongoose - Embedded Web Server
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.
libdatachannel - C/C++ WebRTC network library featuring Data Channels, Media Transport, and WebSockets
IXWebSocket - websocket and http client and server library, with TLS support and very few dependencies
POCO - The POCO C++ Libraries are powerful cross-platform C++ libraries for building network- and internet-based applications that run on desktop, server, mobile, IoT, and embedded systems.
RESTinio - Cross-platform, efficient, customizable, and robust asynchronous HTTP(S)/WebSocket server C++ library with the right balance between performance and ease of use
libhttpserver - C++ library for creating an embedded Rest HTTP server (and more)
ulfius - Web Framework to build REST APIs, Webservices or any HTTP endpoint in C language. Can stream large amount of data, integrate JSON data with Jansson, and create websocket services