userver
htcpp
Our great sponsors
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.
userver
-
Rust vs Go/JVM: dev speed + safety in practice
They recently open sourced internal framework: https://github.com/userver-framework/userver
-
REST APIs using C++. (Is this even done much?)
I think userver (https://userver.tech/) is good way for you. 🐙 userver is the modern open source asynchronous framework with a rich set of abstractions for fast and comfortable creation of C++ microservices, services and utilities.
-
Who is using C++ for web development?
Yandex uses a lot for backend. Also released this framework
- Introducing Beta of userver, an Open-Source Framework for IO-bound Services
htcpp
-
Caddy is the first and only web server to use HTTPS automatically and by default
I'm always a bit bothered by them saying they are the "only" web server that can do this. First you can also just configure it in a way where it will not use HTTPS (e.g. if you provide an IP:port instead of a hostname). And if you do require specific configuration to enable HTTPS and automatically get certificates via ACME, then lots of other web servers can do this too. Even my own web server can do it: https://github.com/pfirsich/htcpp (see https://github.com/pfirsich/htcpp/blob/main/configs/acme.jom... for an admittedly much more complicated config).
-
Introducing co-uring-http, an HTTP server built on C++ 20 coroutines and `io_uring`
Cool stuff! I am currently converting my io_uring based HTTP server (https://github.com/pfirsich/htcpp) to using coroutines as well, so this is cool to see. (WIP library here: https://github.com/pfirsich/aiopp)
-
http sever testing tool
I recently built an HTTP(S) server myself (https://github.com/pfirsich/htcpp) and did not find something like you are looking for. If you also don't find anything (but please link it if you do!), consider just running your server on a publicly accessible VM and listening on port 80 and you will be bombarded by various people trying to break in. Most of it will be useless, like checks for unprotected phpMyAdmin and stuff like that, but I did find a few bugs that way. I even found some TLS issues (of course listen on 443 instead).
-
Who is using C++ for web development?
I am serving static HTML from a web server, which I have built myself using C++: https://github.com/pfirsich/htcpp. I am not sure if that even counts, but I'm kind of proud of it. And I use it to serve my personal website: https://theshoemaker.de.
What are some alternatives?
Boost.Beast - HTTP and WebSocket built on Boost.Asio in C++11
Wt - Wt, C++ Web Toolkit
microservices-framework-benchmark - Raw benchmarks on throughput, latency and transfer of Hello World on popular microservices frameworks
TreeFrog Framework - TreeFrog Framework : High-speed C++ MVC Framework for Web Application
libpqxx - The official C++ client API for PostgreSQL.
bittyhttp - A threaded HTTP library for building REST services in C.
Oat++ - 🌱Light and powerful C++ web framework for highly scalable and resource-efficient web application. It's zero-dependency and easy-portable.
co-uring-http - High performance HTTP server built on C++20 coroutines and io_uring
hook - Open source (free to use) high-performance network communications library including Http server/client support. Header only and designed using the latest C++ standards to provide for a full featured and modern API. Supporting for a wide range of platforms (including embedded, IoT & MCUs).
aiopp - Asynchronous IO for C++20
Firefly - Firefly is an asynchronous web framework for rapid development of high-performance web application.
emsdk - Emscripten SDK