Skip to content

harder/Terminal.Gui

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9,076 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

NuGet Version Bugs codecov Downloads License

Terminal.Gui

Cross-platform UI toolkit for building sophisticated terminal UI (TUI) applications on Windows, macOS, and Linux/Unix.

Terminal.Gui — cross-platform TUI toolkit for .NET. Build full-featured terminal UIs with menus, forms, tables, charts, wizards and file dialogs. +11k stars, +50 built-in views, +1.7M downloads, TrueColor with Unicode and mouse — Windows / macOS / Linux, MIT-licensed.

Version 2.0 Has Been Released

Terminal.Gui enables building sophisticated console applications with modern UIs:

  • Responsive TUI - Easy to use, innovative, layout system enables console apps as responsive as any responsive web page.
  • Performant and Scalable - Built for modern TUIs - fast, double-buffering-based rendering; Tables and Tree Views scale to infinite elements with sorting and filtering.
  • Keyboard First; Mouse First Too - Optimized for TUI experiences where the user's hands never need to leave the keyboard; full mouse support too.
  • Rich Built-in Widgets (Views) - Text editors, buttons, checkboxes, trees, tables, markdown, linear ranges, menus, selectors, and more.
  • Visualizations - Charts, graphs, progress indicators, and color pickers with TrueColor support.
  • Text Editors - Full-featured text editing with clipboard, undo/redo, and Unicode support
  • Fully Configurable - Themes, colors, key bindings, and settings are all customizable and persistable.
  • File Management - File and directory browsers with search and filtering, supporting Nerdfonts and coloring.
  • Wizards and Multi-Step Processes - Guided workflows with navigation and validation.
  • Cross-Platform - Consistent experience on Windows, macOS, and Linux.
  • Apps Work In-line or Full Screen - Build CLI tools like Claude Code/Copilot/Codex CLI that scroll with the terminal (in-line) or full screen.

See the Views Overview for available controls and What's New in v2 for architectural improvements.

Quick Start

Install the Terminal.Gui.Templates, create a new TUI app, and run it:

dotnet new install Terminal.Gui.Templates
dotnet new tui-simple -n myproj
cd myproj
dotnet run

Run the comprehensive UI Catalog demo to explore all controls:

dotnet run --project Examples/UICatalog/UICatalog.csproj

Simple Example

using Terminal.Gui.App;
using Terminal.Gui.ViewBase;
using Terminal.Gui.Views;

using IApplication app = Application.Create ();
app.Init ();

using Window window = new () { Title = "Hello World (Esc to quit)" };
Label label = new ()
{
    Text = "Hello, Terminal.Gui v2!",
    X = Pos.Center (),
    Y = Pos.Center ()
};
window.Add (label);

app.Run (window);

See the Examples for more.

Showcase

See the Showcase for applications built with Terminal.Gui.

Documentation

Comprehensive documentation is at gui-cs.github.io/Terminal.Gui.

Getting Started

Migration & Deep Dives

See the documentation index for all topics.

Installing

dotnet add package Terminal.Gui

Or use the Terminal.Gui.Templates:

dotnet new install Terminal.Gui.Templates

Contributing

Contributions welcome! See CONTRIBUTING.md.

History

See gui-cs for project history and origins.

About

Cross Platform Terminal UI toolkit for .NET

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • C# 99.2%
  • Other 0.8%