libseafire


A few years back I found the need to implement an HTTP-server backend application in C++. The libraries I found were either defunct or, IMHO, too heavy, dependent on too many 3rd-party libraries or had really quirky APIs. libseafire was born.


libseafire makes it easy to build advanced HTTP-servers and clients in C++. All details of the HTTP protocol are accessible, but libseafire also provides an easy to use routing library as well as modelling resources around C++ classes instead of having to dive into the HTTP details needlessly.


The library uses many of the features available in modern C++ and relies heavily on template meta-programming while still providing an intuitive API.


Small footprint


libseafire has few dependencies, the biggest of them being libruntime which itself depends on ASIO. libruntime provides an IO abstraction-layer and polymorphic wrapper around ASIO. This makes it very easy to re-implement libseafire using a different IO subsystem.


Curious?


Visit the libseafire-server wiki or the examples repository for examples and how-tos (work in progress). Or check out the quick example below.

Quick Example

Below is a quick example on how to create an integrated webserver using libseafire in C++. To compile the example I strongly recommend using the build2 toolset, which will automatically download dependencies (libseafire itself and libruntime/ASIO). Read more on build2.org.

Get in touch


Do you need to implement an HTTP-server in your C++ project?


Don't hesitate to contact me today and we can discuss how to best solve your problems.