5 Servus is a small C++ network utility library that provides a zeroconf
6 API, URI parsing and UUIDs.
8 Servus can be retrieved by cloning the
9 [source code](https://github.com/HBPVIS/servus). Please file a
10 [Bug Report](https://github.com/HBPVis/servus/issues) if you find any issues
15 Servus provides classes for:
18 * An URI class to parse strings using generic syntax from
19 [RFC3986](https://www.ietf.org/rfc/rfc3986.txt)
20 * Zeroconf announcement and browsing using Avahi or DNSSD
21 * Detailed @ref Changelog
25 Servus is a cross-platform library, the only mandatory dependency is a C++11
26 compiler. Zeroconf will be available in those platforms were either Avahi or
27 DNSSD are available, otherwise an empty dummy backend is used. Servus uses CMake
28 to provide a platform-independent build configuration. The following platforms
29 and build environments have been tested:
31 * Linux: Ubuntu 16.04, RHEL 6.8 (Makefile, Ninja)
32 * Windows: 7 (Visual Studio 2012)
33 * Mac OS X: 10.9 (Makefile, Ninja)
35 The following external, pre-installed optional dependencies are used:
37 * Boost.Test to build unit tests
38 * Avahi (avahi-client) or DNSSD (Apple Bonjour) for zeroconf
39 * Qt5 Core for servus::qt::ItemModel
40 * Qt5 Widgets for servusBrowser tool
42 Building from source is as simple as:
44 git clone https://github.com/HBPVIS/Servus.git --recursive