Ffead Cpp: Framework for Enterprise Application Development in C++
The ffead-cpp Framework
According to the latest tfb results, ffead-cpp [embedded+v-picov] is currently the 12th fastest web/http/sql framework in the worldLatest Techempower benchmarks
ffead-cpp is a web-framework, application framework, utilities all bundled into one. It also provides an embedded HTTP/Web-Socket compliant high-performance server core. It is a collection of modules all geared towards performing individual roles which together form the cohesive back-bone of ffead-cpp.
It provides a very simple to use and maintain web-framework library with advanced features like Reflection, Dependency Injection (IOC), Inbuilt REST/SOAP support, Security/Authentication features. Moreover implementation for interfacing to caching tools like Memcached/Redis are provided in-built. Database integration/ORM framework (SDORM) solves all major issues with respect to interfacing with SQL/No-SQL database alike.
Multi-level serialization or template level serialization is a high point of ffead-cpp core serialization run-time. Any C++ POCO class can be marked as serializable and the run-time will take care of marshalling/un-marshalling the object to its intended serializable form and back(JSON/XML/BINARY).
ffead-cpp can be easily driven by XML configuration, Services/Controllers/Filters/Interfaces/API(s) are all simple POCO classes without any need for them to extend any classes. The differentiating feature in ffead-cpp is the usage/implementation/support for markers (Annotations in java). Simple #pragma directives can now be used to drive the entire configuration in ffead-cpp, so you can just forget XML configuration.
All in all ffead-cpp is the gap in the world of C++ web application or enterprise application development which I have tried to fill with my humble/honest effort.
cmake, autoconf, meson, xmake, scons, shellb, bazel and buck2 builds are supported
Detailed OS specific instructions, instructions for installing the available server backends and docker/docker-compose scripts are located at docker
scons -Q (Build ffead-cpp along-with the sample applications in web + generate ffead-cpp binary)
Sip some coffee
cd ../ffead-cpp-6.0-bin/ (Navigate to the ffead-cpp binary folder)
chmod +x *.sh
./server.sh (Startup ffead-cpp !!)
Quickstart (Using shellb)
Install shellb with wget -q https://github.com/sumeetchhetri/shellb/releases/download/2.0.0/shellb -P . && chmod +x ./shellb and prerequisites, Always check for the latest version or use the one available already in the package
chmod +x ./shellb && ./shellb ffead-cpp-shellb (Build ffead-cpp along-with the sample applications in web + generate ffead-cpp binary)
Sip some coffee
cd shellb_out/ffead-cpp-6.0-bin/ (Navigate to the ffead-cpp binary folder)