Boost.Beast VS CMake

Compare Boost.Beast vs CMake and see what are their differences.

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
Boost.Beast CMake
11 32
4,164 6,420
1.5% 1.4%
8.3 10.0
10 days ago 6 days ago
C++ C
Boost Software License 1.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.

Boost.Beast

Posts with mentions or reviews of Boost.Beast. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-03-19.
  • LLVM 16.0.0 Release
    2 projects | /r/cpp | 19 Mar 2023
    There is at least one notable exception to this rule: https://github.com/boostorg/beast/issues/1445
  • Learning to build networking applications using C/C++ from scratch
    1 project | /r/cpp_questions | 26 Jan 2023
  • BOOST.BEAST Websocket
    1 project | /r/cpp_questions | 15 Jun 2022
    I am using this example : https://github.com/boostorg/beast/blob/develop/example/websocket/client/async-ssl/websocket_client_async_ssl.cpp My application is listening to tick data streams of crypto exchanges over the websockets and processing and sending orders to the exchange.
  • boost.beast
    2 projects | /r/cpp | 17 Apr 2022
    We used beast to implement a market data server(and I think we also did a small client, to test it) which was sending protobuf messages, and it worked great(we also used boost adio, which made it very scalable). When we tested the server, we were generating around 100k messages per second(when there was the biggest activity on the market), I think I've posted here some stats: https://github.com/boostorg/beast/issues/2313.
  • Suggestions for a minimal and simple http client library?
    2 projects | /r/cpp_questions | 2 Nov 2021
    Boost Beast?
  • tuplet: A Lightweight Tuple Library for Modern C++
    6 projects | /r/cpp | 28 Sep 2021
  • What are some commonly used or underrated features provided by the Boost library that haven't been yet adopted by the STL?
    2 projects | /r/cpp | 20 Sep 2021
  • ASIO Updated in Boost 1.77: Holy Schitte, the NEW FEATURES !!!
    1 project | /r/cpp | 13 Aug 2021
    And Chris wrote this example, which is faster than any of my other examples: https://github.com/boostorg/beast/tree/21cd552399aa8167ed53c21a74f3711c2c316d2f/example/http/server/fast
  • CMake Part 1 – The Dark Arts
    2 projects | news.ycombinator.com | 10 Jul 2021
    cmake -h. -Bbuild && cmake --build build

    to work about 90% of the time. Far more luck than I've had with autotools.

    > Its code is horrifying too, for example:

    1) I'm sure I could find some horriffic code in meson too if I went digging. 2) The alternative to this is you having to write something equivalent in your own code, meaning that in my code I don't need to do stuff like [0] in my code to detect features; my build system handles it for me. 3) CMake supports more platforms and targets than I've ever seen in my life, and likely supports more compilers than are necessary. that's a blessing and a curse, but it means that if I write simple program to run on some crufty microcontroller with a bastardised gcc toolchain from the 90s, it's fairly likely that cmake supports it out of the box. Code like that is the price to pay for that level of support.

    [0] https://github.com/boostorg/beast/blob/b7344b0d501f23f763a76...

  • cpprestsdk in maintenance mode
    17 projects | /r/cpp | 8 Jun 2021
    If you need an embedded C++ HTTP server then there are plenty of libraries/frameworks (in random order): Crow, RESTinio, Boost.Beast, cpp-httplib, http_backend, Pistache, RestBed, served, proxygen, Simple-Web-Server, drogon, oat++.

CMake

Posts with mentions or reviews of CMake. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-06-01.
  • Installer script for CMake, Ninja, and Meson
    4 projects | /r/bash | 1 Jun 2023
    I thought I would share my custom installer script for the latest GitHub versions of CMake, Ninja, and Meson.
  • CMake can't find glut
    1 project | /r/cpp_questions | 11 May 2023
    The same thing probably applies if you use the FindGlut.cmake module which is documented here: https://cmake.org/cmake/help/latest/module/FindGLUT.html
  • FFmpeg Build Script that uses API calls to get the latest versions of each package + extra modules
    3 projects | /r/ffmpeg | 25 Apr 2023
    building cmake - version 3.26.3 ==================================== Downloading https://github.com/kitware/cmake/archive/refs/tags/v3.26.3.tar.gz as cmake-3.26.3.tar.gz Download Completed File extracted: cmake-3.26.3.tar.gz $ ./configure --prefix=/root/ffmpeg-build-script/workspace --parallel=40 --enable-ccache -- -DCMAKE_USE_OPENSSL=OFF $ make -j 40
  • I can't run my c++ project having Python.h header using cmake in Windows
    2 projects | /r/cpp_questions | 17 Apr 2023
    find_package(Python3 ...) will look for a file FindPython3.cmake shipped with CMake. I urge you to try to go over its contents to get an idea of what it does underneath.
  • using a library from a github repository in cmake project
    2 projects | /r/cpp_questions | 30 Mar 2023
    The file FindSomePKG.cmake (module approach) is supposed to be written either by you (you write it manually and put in a cmake subdirectory in your git repo) or it's an official package file shipped along with CMake, e.g FindOpenSSL.cmake with documentation here.
  • Install CMake on Windows
    1 project | dev.to | 18 Mar 2023
  • Install MariaDB from Source Code on Ubuntu
    1 project | dev.to | 13 Feb 2023
    sudo apt-get install build-essential libncurses5-dev gnutls-dev bison zlib1g-dev ccache libssl-dev # Get cmake # Downloaded under ~/ wget https://github.com/Kitware/CMake/releases/download/v3.25.2/cmake-3.25.2.tar.gz cd cmake-3.25.2 ~/cmake-3.25.2 $ ./bootstrap ~/cmake-3.25.2 $ make ~/cmake-3.25.2 $ sudo make install
  • Adding “invariant” clauses to C++ via GCC plugin to enable Design-by-Contract
    5 projects | news.ycombinator.com | 1 Jan 2023
    Note that `assert`s are disabled if you define the macro `NDEBUG`, e.g. https://godbolt.org/z/hMWo8KM7q

    CMake adds these flags to release builds: https://github.com/Kitware/CMake/blob/e1eacbe2c522a8bf9a82af...

    Would be nice to have a non-macro solution for controlling behavior at configure time, but the `NDEBUG` macro is basically already your `DEBUG` constexpr.

  • CLion 2022.3 Released!
    1 project | /r/cpp | 1 Dec 2022
    It's open-source. It might get merged in!
  • Couchbase Node SDK on Docker
    1 project | dev.to | 14 Nov 2022
    FROM node:16 WORKDIR /cmake COPY cmake-3.25.0-rc4-linux-x86_64.sh ./ # OR # RUN apt update && apt install -y g++ wget bash # RUN wget https://github.com/Kitware/CMake/releases/download/v3.25.0-rc4/cmake-3.25.0-rc4-linux-x86_64.sh RUN ./cmake-3.25.0-rc4-linux-x86_64.sh --skip-license && rm cmake-3.25.0-rc4-linux-x86_64.sh ENV PATH="$PATH:/cmake/bin" WORKDIR /app RUN npm i [email protected] COPY package.json . COPY package-lock.json . RUN npm --verbose i COPY . . RUN npm --verbose run build

What are some alternatives?

When comparing Boost.Beast and CMake you can also consider the following projects:

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.

meson - The Meson Build System

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

gcc

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.

ninja - a small build system with a focus on speed

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

awesome-bazel - A curated list of Bazel rules, tooling and resources.

µWebSockets - Simple, secure & standards compliant web server for the most demanding of applications

bazel-remote - A remote cache for Bazel

libwebsockets - canonical libwebsockets.org networking library

cmake-init-vcpkg-example - cmake-init generated executable project with vcpkg integration