When writing anything that needs to communicate with a terminal in some way, it is almost always speaking some dialect of VT100 or ANSI. The libvt 100 library aims solely at parsing a stream of VT100/ANSI data and then letting the host application do the rendering. Many other projects also parse VT100/ANSI data, but their parser is always tangled up with the actual rendering of the data, making reuse in other projects problematic. The hope is that other projects will start using libvt100 and everyone can stop reinventing the wheel with each project.
utfout is a command-line tool that can produce UTF-8 (Unicode) strings in various ways and direct them to standard output, standard error, or direct to the terminal without the need for shell support. Strings can be repeated, delayed, randomly-generated, written to arbitrary file descriptors, interspersed with other characters, and generated using ranges. printf(1)-style escape sequences are supported along with extended escape sequences. utfout(1) sits somewhere between echo(1) and printf(1).
Termdebug is a set of utilities for recording and replaying the input and output of terminal programs. Its main goal is to aid in developing and debugging terminal programs. Other programs such as termrec/termplay, nethack-recorder/player, and script/scriptreplay only record the output. However, when debugging an interactive terminal program, the input is often as important as the output.
STALLioN is a cross-platform C/C++ library for creating coherent CLI/Terminal programs on multiple platforms with one codebase. It aims to provide a consistent development API across multiple platforms so that separate code does not have to be created for each (often very different) terminal interface.