awesome-repositories.com
博客
awesome-repositories.com

通过 AI 驱动的搜索,发现最优秀的开源仓库。

探索精选搜索开源替代品自托管软件博客网站地图
项目关于排名机制媒体报道MCP 服务器
法律隐私政策服务条款
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
gui-cs avatar

gui-cs/Terminal.Gui

0
View on GitHub↗
11,068 星标·776 分支·C#·MIT·5 次浏览gui-cs.github.io/Terminal.Gui↗

Terminal.Gui

Terminal.Gui is a cross-platform .NET toolkit for building interactive text-based user interfaces. It provides a component-based architecture, a terminal rendering engine, and a declarative layout system to create console applications that run consistently across Windows, macOS, and Linux.

The framework distinguishes itself with a comprehensive set of interactive console widgets, including data grids, hex editors, and hierarchical tree components. It supports advanced visual capabilities such as 24-bit True Color, Sixel image support, and a relative-coordinate layout system that adapts to terminal window resizing.

The toolkit covers a broad range of capabilities including session-stack view management for modal workflows, command-based input mapping for platform-independent key bindings, and data visualization tools for rendering charts and tables. It also includes systems for persistent theme configuration and low-level terminal driver abstraction.

The library is compatible with ahead-of-time compilation to support single-file deployment.

Features

  • Text User Interface Development - Provides a comprehensive toolkit for building interactive full-screen or inline console applications using .NET.
  • Cross-Platform Console Tooling - Enables the development of command line utilities with a consistent visual experience across different platforms.
  • Terminal Abstractions - Abstracts console operations through a driver layer to normalize escape sequences and cursor states across platforms.
  • Element Focus Controllers - TUI system for controlling the navigation flow and focus movement between interactive elements.
  • TUI Primitive Rendering - Renders text and colors to the terminal screen using a coordinate-based cursor and Unicode primitives.
  • Wide-Character Formatting - Provides specialized text management for wide characters and CJK scripts to ensure correct formatting across languages.
  • Double Buffering - Uses double-buffering to calculate frame differences and minimize flicker during terminal updates.
  • Cross-Platform TUI Frameworks - Ensures a consistent user interface experience across Windows, macOS, and Linux terminal environments.
  • Declarative Layout Frameworks - Implements a positioning framework using relative coordinates, anchors, and automatic sizing for terminal views.
  • Element Positioning - Implements a declarative positioning system using absolute coordinates, percentages, and relative alignment.
  • Flexible Layout Constraints - Provides a flexible positioning system featuring automatic sizing, centering, and anchoring for responsive elements.
  • Focus Management - Controls keyboard focus and event propagation through a sequenced hierarchy of overlapping views.
  • Form Input Controls - Provides a set of interactive input controls including validated text fields, checkboxes, and numeric steppers.
  • Keyboard Command Mapping - Decouples physical keyboard and mouse events from application logic using a configurable command binding layer.
  • Interactive UI Elements - Provides a composition system for building interfaces using interactive buttons, selectors, and message boxes.
  • Terminal Widget Sets - Ships a comprehensive set of interactive console widgets, including data grids, hex editors, and tree components.
  • Menus and Toolbars - Includes rendering for top-level menu bars, popup context menus, and application status bars.
  • Modal Dialogs - Provides modal overlay components for user confirmations, file selection, and typed prompts.
  • Modal Overlays - Provides a system for creating focused overlay elements such as modal windows, dialogs, and wizards.
  • Relative Layout Rules - Implements a layout system using anchors and percentages to adapt interface elements to terminal resizing.
  • Responsive Layout Adapters - Automatically resolves and adapts declarative element positions when the terminal window is resized.
  • Scrollable Containers - Provides scrollable areas with horizontal and vertical bars for displaying content larger than the viewport.
  • Terminal Rendering Engines - Provides a rendering engine that handles low-level console drivers, TrueColor support, and Sixel graphics.
  • Low-Level Rendering Drivers - Manages low-level console operations including 24-bit TrueColor, Sixel images, and Unicode text formatting.
  • .NET TUI Toolkits - Offers a cross-platform .NET framework for building interactive text-based user interfaces.
  • Text Alignment - Provides comprehensive control over text direction and horizontal and vertical alignment within components.
  • UI Session Stacks - Tracks active interface states using a session stack to manage modal transitions and sequential navigation.
  • UI Styling - Offers a framework for customizing the appearance of interface components using colors, schemes, and gradients.
  • Layout Containers - Organizes interface views using overlapped windows, bordered frames, and tabbed containers.
  • Interactive Command Line Interfaces - Supports the design of guided user experiences including multi-step wizards, modal dialogs, and complex input forms.
  • Global Hotkey Managers - Allows assigning key combinations to activate UI elements regardless of the current focus.
  • Command Binding Systems - Binds platform-independent key combinations to specific application commands across different focus scopes.
  • Blocking View Sessions - Allows running a specific view as a blocking session that returns a type-safe result to the caller.
  • Box-Drawing Glyphs - Provides an engine for automatic glyph selection to render complex borders, corners, and junctions.
  • Gradient Renderers - Implements smooth color transitions and fill patterns for borders and backgrounds.
  • TUI Application Shortcuts - Supports global key combinations that trigger actions across the application regardless of focused views.
  • Configurable Key-to-Command Mappings - Provides a system for mapping specific keys to application commands across operating systems via configuration.
  • Tree View Components - Implements a hierarchical tree renderer with support for expandable branches and dynamic node loading.
  • Application Lifecycle Management - Provides tools to manage the full operational lifecycle of a console application from startup to cleanup.
  • JSON Configuration Schemas - Uses structured JSON files to persist and load visual themes, key bindings, and user preferences.
  • Application Configuration - Provides a system for loading and persisting application preferences from JSON, environment variables, and resources.
  • Multi-Application Coordination - Implements a manager to coordinate multiple isolated application instances within a single process.
  • Terminal Cursor Controllers - Decouples the visible terminal cursor from the internal rendering position.
  • Data Grids - Provides a high-performance tabular data display supporting infinite scrolling and customizable data sources.
  • Data Tables - Provides interactive components for rendering, sorting, and filtering structured data in a tabular format.
  • File Dialogs - Provides standardized modal interfaces for opening and saving files from the local filesystem.
  • Dynamic View Management - Enables users to dynamically move, resize, and overlap interface views in real time.
  • Event Handling - Provides mechanisms for capturing and responding to low-level keyboard key down and key up events.
  • Terminal Image Renderers - Implements support for the Sixel protocol to display images within terminal interfaces.
  • File System Browsers - Includes a TUI file browser with search, filtering, and custom icon support for system navigation.
  • Data Visualizations - Implements a charting and graphing system capable of rendering large datasets with integrated sorting.
  • Inline Rendering Modes - Implements a display mode that renders the interface within the primary shell scrollback buffer instead of full-screen.
  • Input Bindings - Defines keyboard shortcuts that adapt based on the operating system to meet platform-specific user expectations.
  • Layout Decorations - Supports the addition of borders, margins, and padding to control the visual boundaries of UI elements.
  • Menu Components - Implements horizontal and vertical command bars with shortcuts to trigger application actions.
  • Mouse Event Handlers - Implements event processing for mouse clicks and hovers using viewport-relative coordinates.
  • Independent Navigation Stacks - Tracks active interface states using a session stack to manage modal transitions and navigation.
  • Focus Movement Systems - TUI centralized navigation system controlling focus movement via configurable tab stops and groups.
  • Popover Overlays - Implements temporary overlay views that can host content and return typed results to the calling view.
  • Guided Workflows - Implements guided workflows that organize complex user interactions into a sequence of navigable steps.
  • Rich Text Renderers - Provides a read-only content display that renders Markdown, tables, and code blocks within the terminal.
  • Selection Components - Ships a suite of selection tools including dropdown lists, multi-choice selectors, and range sliders.
  • Driver Discovery Systems - TUI registry system that identifies compatible terminal drivers to ensure cross-platform support.
  • Terminal Data Visualizations - Implements graphical views for rendering numerical data series and annotations using text-based graphics.
  • Full Screen Modes - Allows toggling the user interface between a full-screen mode and an inline scrolling mode.
  • Text Editing Components - Provides a high-performance text entry component supporting Unicode, clipboard operations, and undo/redo functionality.
  • True Color Support - Supports 24-bit RGB color rendering with automatic fallbacks for older terminal emulators.
  • Hexadecimal Editors - Ships a binary stream viewer component that displays data in hexadecimal format alongside printable characters.
  • View Alignment Systems - Arranges multiple views horizontally or vertically using consistent spacing and alignment modes.
  • Viewport Managers - Manages the viewport location to reveal content that exceeds the visible screen area.
  • Visual Theme Configurations - Provides a system for applying and persisting visual themes and styles across user sessions.
  • Project Documentation Examples - Features a hero animation and cross-platform tagline.
  • TUI Libraries - Cross-platform .NET TUI toolkit.

Star 历史

gui-cs/terminal.gui 的 Star 历史图表gui-cs/terminal.gui 的 Star 历史图表

AI 搜索

探索更多 awesome 仓库

用简单的语言描述您的需求 —— AI 将根据相关性为您从数千个精选开源项目中进行排序。

Start searching with AI

常见问题解答

gui-cs/terminal.gui 是做什么的?

Terminal.Gui is a cross-platform .NET toolkit for building interactive text-based user interfaces. It provides a component-based architecture, a terminal rendering engine, and a declarative layout system to create console applications that run consistently across Windows, macOS, and Linux.

gui-cs/terminal.gui 的主要功能有哪些?

gui-cs/terminal.gui 的主要功能包括:Text User Interface Development, Cross-Platform Console Tooling, Terminal Abstractions, Element Focus Controllers, TUI Primitive Rendering, Wide-Character Formatting, Double Buffering, Cross-Platform TUI Frameworks。

gui-cs/terminal.gui 有哪些开源替代品?

gui-cs/terminal.gui 的开源替代品包括: arthursonzogni/ftxui — FTXUI is a C++ terminal user interface library and cross-platform console framework used for building interactive… textualize/toolong — toolong is a terminal log viewer and TUI log manager designed for monitoring live log streams and navigating large log… whatwg/html — This repository contains the HTML specification, which defines the core standards for web page structuring, content… gyscos/cursive — Cursive is a cross-platform terminal user interface toolkit and framework for building interactive applications in… rivo/tview — tview is a library for building interactive text-based user interfaces in Go. It functions as a toolkit for managing… longbridge/gpui-component — gpui-component is a native desktop UI kit and component library built for the GPUI framework. It provides a collection…

Terminal.Gui 的开源替代方案

相似的开源项目,按与 Terminal.Gui 的功能重合度排序。
  • arthursonzogni/ftxuiArthurSonzogni 的头像

    ArthurSonzogni/FTXUI

    9,686在 GitHub 上查看↗

    FTXUI is a C++ terminal user interface library and cross-platform console framework used for building interactive command line applications. It functions as a declarative terminal layout engine and a component-based UI toolkit that enables the creation of responsive interfaces. The library is distinguished by its terminal graphics and animation capabilities, allowing for the rendering of custom shapes, data plots, and smooth visual transitions using easing functions. It provides a comprehensive set of interactive widgets and a layout system utilizing flexbox and grid containers that adapt to

    C++arthursonzogniasciiascii-art
    在 GitHub 上查看↗9,686
  • textualize/toolongTextualize 的头像

    Textualize/toolong

    3,921在 GitHub 上查看↗

    toolong is a terminal log viewer and TUI log manager designed for monitoring live log streams and navigating large log files. It functions as a log aggregator and JSONL formatter, capable of merging multiple log files into a single chronological view by automatically detecting timestamps. The application supports the visualization of structured data by pretty printing JSONL files and applying syntax highlighting to common web server log patterns. It handles large-scale data efficiently through virtual-sized scrollable views, allowing users to open compressed logs or files of any size without

    Pythonjsonlrichterminal
    在 GitHub 上查看↗3,921
  • whatwg/htmlwhatwg 的头像

    whatwg/html

    9,163在 GitHub 上查看↗

    This repository contains the HTML specification, which defines the core standards for web page structuring, content organization, and document rendering. It establishes the fundamental algorithms for state-machine-based tokenization, tree construction for the document object model, and origin-based security isolation. The specification provides a framework for defining custom elements with independent lifecycles and registries. It also details the requirements for cross-document communication, session history management, and the synchronization of interface properties with content attributes.

    HTMLcanvaseventsourcehtml
    在 GitHub 上查看↗9,163
  • gyscos/cursivegyscos 的头像

    gyscos/Cursive

    4,810在 GitHub 上查看↗

    Cursive is a cross-platform terminal user interface toolkit and framework for building interactive applications in Rust. It provides a modular system for creating text-based graphical interfaces, utilizing a dedicated engine to manage the main display loop and view hierarchies. The toolkit features a backend-agnostic abstraction layer to ensure consistent rendering and input handling across different operating systems. It distinguishes itself through a palette-based theme engine that supports runtime theme loading and true color rendering, as well as the ability to generate user interface hie

    Rust
    在 GitHub 上查看↗4,810
查看 Terminal.Gui 的所有 30 个替代方案→