A Text-based User Interface (TUI) provides a structured way to engage with a computer through text characters. Unlike a basic Command-Line Interface (CLI), a TUI utilizes the entire screen, incorporating menus, panels, and colors for better visual organization. While it still relies on keyboard input and text, it enhances the user experience by creating a more advanced terminal setting that connects the simplicity of commands with the richness of graphical interfaces (GUIs).
The software featured in this roundup helps developers create TUI programs. There is a diverse range of programs included, mostly best described as frameworks. Haskell is a powerful, purely functional programming language known for its strong type system, lazy evaluation, and mathematical elegance, enabling developers to write concise, robust, and highly reliable code for complex systems in finance, big data, and academia.
Here’s our verdict captured in a legendary LinuxLinks-style ratings chart. Only free and open source software is eligible for inclusion.

Click the links in the table below to learn more about each tool.
| Haskell TUI Frameworks | |
|---|---|
| brick | Terminal user interface (TUI) programming toolkit |
| vty | Provides a high-level interface for doing terminal I/O |
| reflex-vty | Build terminal applications using functional reactive programming |
| haskeline | User interface for line input in command-line programs |
This article has been updated to reflect the changes outlined in our recent announcement.
LinuxLinks helps you discover the best free and open source software for Linux. Explore our extensive collection of recommended applications, including alternatives to popular proprietary software.We also publish software reviews, Linux tutorials, hardware reviews, free programming books and articles covering the wider open source community. Browse our Linux resources to discover more. Know a useful free and open source Linux application we haven't covered? Suggest a program for inclusion. Has your software been featured on LinuxLinks? Display one of our Featured on LinuxLinks badges on your website or GitHub README. |


Please read our Comment Policy before commenting.