Terminal.Gui

Cross Platform Terminal UI toolkit for .NET

0
0
0
public
Forked

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.

logo

  • undefinedv2 (Current): NuGet Version - Stable release
  • undefinedv1 (Legacy): NuGet Version - Maintenance mode only

undefinedNote: v1 is in maintenance mode — only critical bug fixes accepted. v2 is recommended for all projects.

Sample app

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 directory for more.

Build Powerful Terminal Applications

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

  • undefinedRich Forms and Dialogs - Text fields, buttons, checkboxes, radio buttons, and data validation
  • undefinedInteractive Data Views - Tables, lists, and trees with sorting, filtering, and in-place editing
  • undefinedVisualizations - Charts, graphs, progress indicators, and color pickers with TrueColor support
  • undefinedText Editors - Full-featured text editing with clipboard, undo/redo, and Unicode support
  • undefinedFile Management - File and directory browsers with search and filtering
  • undefinedWizards and Multi-Step Processes - Guided workflows with navigation and validation
  • undefinedSystem Monitoring Tools - Real-time dashboards with scrollable, resizable views
  • undefinedConfiguration UIs - Settings editors with persistent themes and user preferences
  • undefinedCross-Platform CLI Tools - Consistent experience on Windows, macOS, and Linux
  • undefinedServer Management Interfaces - SSH-compatible UIs for remote administration

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

Documentation

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

Getting Started

Migration & Deep Dives

See the documentation index for all topics.

Installing

v2 (Recommended)

dotnet add package Terminal.Gui

Or use the Terminal.Gui.Templates:

dotnet new install Terminal.Gui.Templates

v1 Legacy

dotnet add package Terminal.Gui --version "1.*"

Contributing

Contributions welcome! See CONTRIBUTING.md.

History

See gui-cs for project history and origins.

[beta]v0.3.0