# Terminal.Gui Documentation

> [!IMPORTANT]
> Terminal.Gui v2 "Alpha" has been released.

Welcome to the Terminal.Gui documentation! This comprehensive guide covers everything you need to know about building modern terminal user interfaces with Terminal.Gui.

> [!NOTE]
> This is the v2 API documentation. For v1 go here: https://gui-cs.github.io/Terminal.GuiV1Docs/

## Getting Started

- [Getting Started](~/docs/getting-started.md) - Quick start guide to create your first Terminal.Gui application
- [Migrating from v1 to v2](~/docs/migratingfromv1.md) - Complete guide for upgrading existing applications
- [What's New in v2](~/docs/newinv2.md) - Overview of new features and improvements

## Deep Dives

- [ANSI Response Parser](~/docs/ansiparser.md) - Terminal sequence parsing and state management
- [Cancellable Work Pattern](~/docs/cancellable-work-pattern.md) - Core design pattern for extensible workflows
- [Character Map Scenario](~/docs/CharacterMap.md) - Complex drawing, scrolling, and Unicode rendering example
- [Command System](~/docs/command.md) - Command execution, key bindings, and the Selecting/Accepting concepts
- [Configuration Management](~/docs/config.md) - Persistent settings, themes, and configuration scopes
- [Cross-Platform Driver Model](~/docs/drivers.md) - Platform abstraction and console driver architecture
- [Cursor System](~/docs/cursor.md) - Modern cursor management and positioning (proposed design)
- [Dim.Auto](~/docs/dimauto.md) - Automatic view sizing based on content
- [Events](~/docs/events.md) - Event patterns and handling throughout the framework
- [Keyboard Input](~/docs/keyboard.md) - Key handling, bindings, commands, and shortcuts
- [Layout System](~/docs/layout.md) - View positioning, sizing, and arrangement
- [Lexicon & Taxonomy](~/docs/lexicon.md) - Terminology and concepts used throughout Terminal.Gui
- [Logging & Metrics](~/docs/logging.md) - Comprehensive logging and performance monitoring
- [Multitasking](~/docs/multitasking.md) - Application lifecycle and event dispatching
- [Mouse Input](~/docs/mouse.md) - Mouse event handling and interaction patterns
- [Navigation](~/docs/navigation.md) - Focus management, keyboard navigation, and accessibility
- [Popovers](~/docs/Popovers.md) - Drawing outside viewport boundaries for menus and popups
- [Scrolling](~/docs/scrolling.md) - Built-in scrolling, virtual content areas, and scroll bars

## API Reference

For detailed API documentation, see the [API Reference](~/api/Terminal.Gui.App.yml).

