Open Tool Kit (Otk) is a portable widget library for making graphical user interfaces for C programs. It emphasizes simplicity for the application programmer without eliminating capability. Based on OpenGL, Otk supports Linux, Unix, and other OSs neutrally and efficiently. It is simple and compact, and it strives for easy compilation and linking to other applications. In seeking to address several issues associated with earlier graphics APIs, Otk explores some interesting methods, such as window-relative layout instead of pixel-based layout.
libsysactivity is a lightweight library that retrieves statistics of the system's activity in a portable and thread safe way. In each OS that it supports, it offers the same API for retrieving the activity of Hard disks, CPUs memory, Processes, Network interfaces, Memory, and Swaps.
liblognorm is a tool to normalize log data. It takes logs in different formats as input and outputs the data within them in a single, consistent format. For example, if you have traffic logs from three different firewalls, liblognorm will be able to normalize all the events into a generic form. Among other features, it can extract source and destination IP addresses and ports and make them available via well-defined fields. The result is that a common log analysis application will be able to work on that common set independently from the actual firewalls feeding it. Even better, once a well-understood interim format exists, it is also easy to convert that into any other vendor specific format, so that you can use that vendor's analysis tool.
Libee is an event expression library that is inspired by the upcoming CEE standard. Right now, it provides capabilities to generate and emit messages in a set of standard formats and read a set of different input formats. Libee also comes with a handy conversion tool that provides format transformation without the need to program.
Mathomatic is a portable, general-purpose computer algebra system (CAS) that can solve, differentiate, simplify, combine, and compare algebraic equations, perform standard, complex number, modular, and polynomial arithmetic, etc. It does some calculus and is very easy to compile/install, learn, and use. The symbolic math application with a simple command-line interface is designed to be a colorful algebra calculator that is reliable, responsive, and convenient to use. The symbolic math library is lightweight and easy to include in other software, due to being written entirely in C with no additional dependencies.
liboping is a C library for measuring network latency using ICMP echo requests. It can send to and receive packets from multiple hosts in parallel, which is nice for monitoring applications. Both IPv4 and IPv6 are supported transparently for the programmer and user. A program called oping is included to show the simplicity and potential of the library and provide the functionality at the command line.
The aim of SCEW is to provide an easy interface around the XML Expat parser, as well as a simple interface for creating new XML documents. It provides functions to load and access XML elements without the need to create Expat event handling routines every time you want to load a new XML document. It uses a DOM-like object model for new or parsed XML documents, supports loading concatenated XML documents, can copy and compare full XML documents, elements, or attributes, writes XML documents to multiple outputs, and allows adding new I/O sources easily. It supports UTF-8, ISO-8859-1, and US-ASCII encoding (and UTF-16 in Windows).
libjson is a JSON parser and printer that is fully compliant with the JSON spec. The parser is efficient and interruptible with a simple and flexible API. It also optionally supports extensions like C-style comments or Python/YAML style comments, and for security allows the user to set a limit on the number of nested structures and the parse buffer. The library plugs easily into any model since it doesn't include any object model, and plugs easily in any project's memory management since the memory functions can be redefined.