µWebSockets VS libcurl

Compare µWebSockets vs libcurl and see what are their differences.

µWebSockets

Simple, secure & standards compliant web server for the most demanding of applications (by uNetworking)

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 and TFTP. libcurl offers a myriad of powerful features (by curl)
Our great sponsors
  • OPS - Build and Run Open Source Unikernels
  • Scout APM - Less time debugging, more time building
  • SonarQube - Static code analysis for 29 languages.
µWebSockets libcurl
12 115
13,490 23,251
1.1% 2.5%
8.5 9.9
6 days ago 4 days ago
C++ C
Apache License 2.0 GNU General Public License v3.0 or later
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
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.

µWebSockets

Posts with mentions or reviews of µWebSockets. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-11-29.

libcurl

Posts with mentions or reviews of libcurl. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-01-22.
  • Any good free dns server except adguard for blocking ads?
    1 project | reddit.com/r/dns | 22 Jan 2022
    Pick one that suits your needs and location https://github.com/curl/curl/wiki/DNS-over-HTTPS
  • About CMake 🤯
    5 projects | reddit.com/r/cpp_questions | 22 Jan 2022
    Yes, there are always some retards around, unfortunately. However looking at the CMakeLists.txt for libcurl it doesn't look too bad.
  • cURL to add native JSON support
    8 projects | reddit.com/r/programming | 20 Jan 2022
    That actually looks quite practical and convenient. I'm a wget fan myself, but have to use curl sometimes when collaborating with coworkers, and would use curl more often if it implemented the features described in its github wiki -- https://github.com/curl/curl/wiki/JSON
    8 projects | reddit.com/r/programming | 20 Jan 2022
    The examples shown in the proposal page are more illustrative. They're discussing the ability to make it easier to pass json on requests. You'd still need to use jq to parse the output.
    8 projects | reddit.com/r/programming | 20 Jan 2022
    The --jp bit is somewhat against the unix philosophy. E.g. with jo and jq I can today do exactly what the proposal page posits by composing "simple" tools (including shell expansion):
    8 projects | news.ycombinator.com | 20 Jan 2022
    }

    While this is neat, I suppose, it seems like such a waste that the first one isn't given as:

    --jp a=b,c=d,e=2,f=false

    And the second as:

    --jp map=europe --jp prime[]=13,17 --jp target[]=x:-10,y:32

    ...or similar. The repetition kind of bothers me.

    [1]: https://github.com/curl/curl/wiki/JSON

    8 projects | news.ycombinator.com | 20 Jan 2022
    Shouldn't this be a GitHub issue or GitHub discussion:

    https://github.com/curl/curl/wiki/JSON

    Wiki is a weird format to use for a proposal.

    8 projects | news.ycombinator.com | 20 Jan 2022
    The --jp (json part) command line option, described at https://github.com/curl/curl/wiki/JSON, has "anti-pattern" written all over it to me. Why introduce some specific, curl-only wonky-ish version of JSON? Is this any easier to remember than normal JSON? I mean, right now, I use cURL all the time with JSON posts, just doing something like

    -d '{ "foo": "bar", "zed": "yow" }'

    The proposed --jp flag seems worse to me in every way.

    (Note I do like the --json as just syntactic sugar for -H "Accept: application/json" -d )

  • JSON Awareness in the Curl Tool
    1 project | reddit.com/r/commandline | 20 Jan 2022
    2 projects | news.ycombinator.com | 20 Jan 2022

What are some alternatives?

When comparing µWebSockets and libcurl you can also consider the following projects:

Boost.Beast - HTTP and WebSocket built on Boost.Asio in C++11

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.

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.

Simple-WebSocket-Server

libwebsockets - canonical libwebsockets.org networking library

cpr - C++ Requests: Curl for People, a spiritual port of Python Requests.

cpp-netlib - The C++ Network Library Project -- cross-platform, standards compliant networking library.

Mongoose - Embedded Web Server

WebSocket++ - C++ websocket client/server library