outcome
RESTinio
outcome | RESTinio | |
---|---|---|
9 | 14 | |
662 | 1,107 | |
- | 0.7% | |
6.9 | 8.9 | |
6 days ago | about 2 months ago | |
C++ | C++ | |
GNU General Public License v3.0 or later | GNU General Public License v3.0 or later |
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.
outcome
-
How to define API stability for a C++ library?
https://github.com/ned14/outcome/tree/develop/abi-compliance uses both in a CI pass to ensure Outcome never changes anything which breaks either API or ABI with earlier versions.
-
What are some cool modern libraries you enjoy using?
outcome and/or expected
-
Outcome enters sustaining phase, goes ABI stable
A "Sample Usage" appears on the front page of the docs: https://ned14.github.io/outcome/
-
Does Anyone Use Boost Outcome?
I recently came across boost outcome as I was searching for a better error handling method. It took me a minute to get a hang of it but now I love it. After creating my own policy and a few aliases for easier use.
-
Is this error handling strategy good?
std::optional and std::variant can be a bit awkward to use in this scenario, though. Consider a dedicated type like boost::outcome (standalone versions) or one of the implementations of the proposed std::expected.
-
Modern C++ "result" type based on Swift / Rust
Minimum possible compile time impact is a key goal of https://github.com/ned14/outcome. We ship a single header edition which only includes the low impact standard headers as listed at https://github.com/ned14/stl-header-heft. We also don't use union storage for non-TC non-MB types in order to avoid complex metaprogramming execution by the compiler per instantiation.
-
C++ Memory Safety
It's really weird that I wrote the above, and then this bug was reported to Outcome: https://github.com/ned14/outcome/issues/244. Here is my exact complaint about lack of lifetime tracking in C++.
RESTinio
-
What is the industry standard today in C++ to deploy REST microservices in Kubernetes?
In my past job, we used https://github.com/Stiffstream/restinio and absolutely loved it. It's not as active but it honestly didn't need much.
-
What are some fun project ideas with C++?
Here's a C++ REST framework for you to use too: https://github.com/Stiffstream/restinio
- What code/project you saw was both inspiring and maintainable?
-
What are some cool modern libraries you enjoy using?
I had a good experience using restinio for a small ASIO HTTP server recently.
-
Can I use C++ in the backend ?? Any frameworks there ??
It uses restinio https://github.com/Stiffstream/restinio with great success ;)
- Modern C++ Web API (Back-End Development)
-
Confused about beginning application development using c++. Pls help.
For networking, pick a networking library. Restinio is a fair choice for HTTP. But, again, feel free to pick others.
-
NodeJS vs Go for low memory usage
You may find this worthwhile: https://github.com/Stiffstream/restinio/issues/101 FWIW, I used Restbed successfully for 3.5 years before switching personal projects to Restino. I've left the job that used Restbed, but I think they are still using it.
-
What does modern (good) API development look like and what are the best tools to use?
Contrary to the direction most people go, I've been writing REST APIs as C++ servers using two different fairly full featured C++ REST frameworks: first using https://github.com/Corvusoft/restbed and more lately using https://github.com/Stiffstream/restinio. These can be peers with any other server, while living on embedded and/or high compute devices for video encode/decode/analysis, deployed ML models, encryption for and remote process communications, model data collection and similar expensive or in-field processing. In both high compute and in-field-no-internet situations creating REST APIs in C++ enables speed and system controls not present in the majority of the mainstream REST frameworks. It's a big world, and here comes ubiquitous high compute...
-
cpprestsdk in maintenance mode
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++.
What are some alternatives?
leaf - Lightweight Error Augmentation Framework
Boost.Beast - HTTP and WebSocket built on Boost.Asio in C++11
C++ Format - A modern formatting library
Restbed - Corvusoft's Restbed framework brings asynchronous RESTful functionality to C++14 applications.
Experimental Boost.DI - C++14 Dependency Injection Library
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.
stb - stb single-file public domain libraries for C/C++
Crow - A Fast and Easy to use microframework for the web.
Serial Communication Library - Cross-platform, Serial Port library written in C++
µWebSockets - Simple, secure & standards compliant web server for the most demanding of applications
ZXing - ZXing ("Zebra Crossing") barcode scanning library for Java, Android
Oat++ - 🌱Light and powerful C++ web framework for highly scalable and resource-efficient web application. It's zero-dependency and easy-portable.