VisualT is a cross-platform C library that makes creating UTF8 text-based UIs easier and faster.

For a quick overview of the main features, check out the Basic Concepts page.

If you appreciated the work, leave a star on the GitHub repo.


  • Has no dependencies other than standard libraries.

  • It works wherever UTF-8 encoded text can be displayed properly, and that includes even Windows 10! See on the faq.

  • Makes no assumptions about the output, it just outputs text.

  • It’s much more lightweight than more feature-packed libraries like NCurses.

  • Good CMake code is one of the main objectives.


The documentation is still work in progress, but the main sections are content complete. That includes:

VisualT’s dependencies are managed by the Hunter Package Manager:

Hunter is a CMake-powered package manager, it’s completely written in CMake. Other than being inherently cross-patform, it offers a CMake-friendly interface for every available package, which is a quite valuable feature. It is also committed to complying with modern CMake best practices. If you’re starting a new project, give it a try, and spread the word!