Oat++
Pistache
Oat++ | Pistache | |
---|---|---|
24 | 4 | |
7,935 | 3,219 | |
0.7% | 0.7% | |
8.0 | 9.8 | |
7 days ago | 11 days ago | |
C++ | C++ | |
Apache License 2.0 | Apache License 2.0 |
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.
Oat++
-
Serving Static Files and Single Page Applications on Oat++ (OatPP)
Oat++(OatPP) is a lightweight C++ Web framework. Out of the box, it provides REST API with built-in JSON serialization/deserialization features, which could be interfaced with your DTOs.
-
Installing and Using The OatPP (Oat++) Library
mkdir temp && cd temp git clone https://github.com/oatpp/oatpp.git
-
Experience using crow as web server
I looked at oatpp and drogon, which are both great, but feel too high-level for my purposes. I tried drogon and got something working, but it feels like too much for my requirements, as in particular I'd like to slot in my choice of Json and message-body handling. C.f. the simple approach in Crow, which I easily understand and build on.
-
What isn't cpp used on web servers as much as other languages?
With the right libraries, C++ could be a good fit for applications that want to expose a fast web API to things that need lots of compute (simulators, for instance) or I/O (interactive editing of large datasets). Projects like Oat++ and Crow give me hope that we might see such an ecosystem develop.
-
REST APIs using C++. (Is this even done much?)
Lots of other options have been mentioned, but I'll throw Oat++ into the mix. I used it for this purpose and it was reasonably painless.
- C/C++ framework for REST API implementation
-
People talking about C++ and Java as bad languages. Let me introduce to you: Java++
https://github.com/oatpp/oatpp +WASM ;)
-
Server with oat++. Installation. CmakeLists.txt
cd "some/temp/path/for/repositories" git clone https://github.com/oatpp/oatpp.git cd oatpp mkdir build && cd build cmake .. (sudo) make install
-
How to use C++ as the backend for web dev?
Maybe use something like https://oatpp.io to create a REST API: C++ in the backend with this library to create a REST server, and the JavaScript/TypeScript frontend to ask for the information.
-
making a web server in c++?
I've used OATPP ( https://github.com/oatpp/oatpp ) which worked nicely for setting up simple rest interfaces. Supports things like swagger & websockets out of the box. It's also on Conan which is nice if you use cmake. I can't speak to it's performance but it has about a 1mb binary size footprint.
Pistache
- REST APIs using C++. (Is this even done much?)
-
C++ backend with React.js frontend
A coworker at my last job used pistache.io as a web back-end framework for C++ to good effect. I have no idea if it's the best, or even good, but I know that he made a project with it that I was calling into (I was building the front-end) and it worked.
-
I'm not sure what to study now ):
There are some C++ API frameworks like Pistache or Restbed (full list here) to get started. If I should be 100% honest, I don't think C++ is worth for APIs as we have easier solutions with the same performance nowadays (like Go and Rust), but I think we should try everything, right?
-
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?
drogon - Drogon: A C++14/17 based HTTP web application framework running on Linux/macOS/Unix/Windows [Moved to: https://github.com/drogonframework/drogon]
Crow - Crow is very fast and easy to use C++ micro web framework (inspired by Python Flask)
Restbed - Corvusoft's Restbed framework brings asynchronous RESTful functionality to C++14 applications.
Boost.Asio - Asio C++ Library
Crow - A Fast and Easy to use microframework for the web.
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.
Wt - Wt, C++ Web Toolkit
Civetweb - Embedded C/C++ web server
drogon - Drogon: A C++14/17/20 based HTTP web application framework running on Linux/macOS/Unix/Windows