/libd

libd is an Unix-style oriented framework for writing of event-driven network daemons/services in C++ focused on clear and comprehensible API

Primary LanguageC++

libd
====

libd is an Unix-style oriented framework for writing of event-driven network
daemons/services in C++ focused on clear and comprehensible API. It provides a
high-level library of several Unix design patterns as found in high-performance
services such as varnish-cache[1], or relayd[5]. libd strongly relies on
libuv[2] as its event-machine core.

In the API level it is exposed a way to build C++ webservices with the same
look and feel of web.py[3], or TCP-servers with the same look and feel of
twisted[4], meanwhile under-the-hood, instead of "boostisms" and workarounds to
cope with cross-platform issues (windows), libd is implemented to take maximum
profit of resources broadly available at an underlying Unix-like operating
system.

Bootstrapping
=============

    % tools/bmakebuild.sh
    % alias bmake=~/.opt/bmake/bin/bmake

Building
========

    % bmake regress

Demo
====

    % cd demos/httpd && bmake
    % ./httpd

Installing
==========

    % DESTDIR=/opt/libd bmake install

References:
[1] http://varnish-cache.org
[2] https://github.com/joyent/libuv/
[3] http://webpy.org/
[4] http://twistedmatrix.com
[5] http://bsd.plumbing

# vim: set ts=4 sw=4 et: