14 Repos
Principles and tools for designing visual layouts and user experiences for terminal applications.
Distinct from Command Line Interfaces: Shortlist candidates are focused on finished applications or specific examples rather than the design framework itself.
Explore 14 awesome GitHub repositories matching user interface & experience · Command Line Interface Design. Refine with filters or upvote what's useful.
spectre.console is a .NET console UI library and command-line interface framework used to build rich user interfaces for console applications. It functions as a console text markup processor and terminal layout engine to provide advanced text styling and structured data organization. The library enables the creation of visually organized interfaces using a system of tables, grids, and panels. It utilizes a dedicated markup language to apply colors and styles to terminal output, allowing for the rendering of formatted text and complex visual structures.
Enables the creation of professional visual layouts and styled text for .NET console applications.
yargs is a command-line interface framework and argument parser for Node.js. It translates raw command-line strings into structured JavaScript objects, providing a toolkit for building terminal applications with nested sub-commands, dedicated handlers, and a structured user interface. The framework distinguishes itself through automated help text generation, which constructs formatted usage menus and instructions based on registered metadata. It also provides shell completion generation for Bash and Zsh and uses string-distance algorithms to offer typo correction suggestions when invalid inpu
Provides a framework for designing structured terminal applications with sub-commands, flags, and positional arguments.
Ora is a terminal spinner library and Node.js CLI component used to integrate animated loading indicators and task-outcome symbols into JavaScript-based terminal applications. It functions as a progress visualizer that signals the status of command-line operations through animated sequences of characters. The library provides promise-based spinner wrapping, allowing animations to start and resolve automatically based on the outcome of asynchronous tasks. It replaces active animations with specific success, failure, warning, or info symbols to communicate the final result of a process. The to
Provides visual indicators to inform users that a long-running terminal process is still executing.
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
Implements smooth visual transitions and easing functions for dynamic elements in terminal applications.
This is an ANSI terminal color library and console output manager used for applying colors and text attributes to command line interface output. It functions as a terminal text styler and RGB color formatter, generating the escape codes necessary for foreground and background styling. The project supports 24-bit high-color RGB mapping for precise color rendering in compatible terminal emulators. It enables the creation of colorized text fragments that can be embedded into larger blocks of text or applied as global styles that persist across subsequent output streams. The library covers broad
Formats terminal output for tools and scripts to provide clear visual cues and a professional user interface.
no-more-secrets is a command line tool and functional library designed to render cinematic text decryption sequences in the terminal. It uses an ANSI escape sequence renderer to create visual effects where characters shift and reveal original text, simulating high-tech data decryption. The project includes a cross-terminal compatibility layer to ensure these animations render in environments that lack native ANSI escape sequence support. Users can customize the visual style of the decryption effect, including colors and masking options. Beyond the standalone tool, the project provides an emb
Improves terminal user experience by adding polished visual feedback and stylized animations to CLI tools.
This project is a collection of resources and utilities for macOS terminal customization, providing a set of color schemes, a palette previewer, and theme conversion tools. Its primary purpose is to manage the visual appearance of the default macOS Terminal application. The toolkit includes a theme converter for transforming color scheme files between different terminal application formats. It also features a previewer that uses escape sequences to generate visual representations of color palettes for validation. The system covers broader capabilities for command line interface visual design
Provides tools for creating and testing color palettes to design the visual experience of command line interfaces.
Postlight Parser is a command-line tool that extracts the main article content from any web page URL, returning clean structured data including the title, author, date, excerpt, and lead image while stripping away ads and clutter. It uses a readability-based heuristic that scores HTML elements on text density and structural cues to identify the article body, and can accept pre-fetched HTML strings directly for parsing instead of fetching the URL. The tool distinguishes itself through a modular architecture that supports domain-specific extractor overrides, allowing custom JavaScript modules t
Exposes all extraction functionality through a command-line tool that accepts URL, format, and header flags.
pterm ist eine Go-Terminal-UI-Bibliothek, die zum Erstellen reichhaltiger CLI-Anwendungen verwendet wird. Sie bietet Toolsets für Terminal-Datenvisualisierung, Fortschrittsverfolgung von Vorgängen, interaktive Benutzereingaben und strukturiertes Logging. Die Bibliothek zeichnet sich durch einen umfassenden Satz an visuellen Tools aus, einschließlich eines Frameworks für interaktive Terminal-Prompts wie Auswahlmenüs und Bestätigungsdialoge sowie eines spezialisierten Systems zum Rendern von Balkendiagrammen, Heatmaps und Baumstrukturen. Sie enthält zudem einen strukturierten Terminal-Logger, der in der Lage ist, abgestufte, farbige Systemmeldungen zu erzeugen. Das Projekt deckt breite Funktionsbereiche ab, einschließlich Layout und Formatierung, Monitoring und Observability mittels Fortschrittsbalken und Spinnern sowie globalem Theme-Management, um eine einheitliche visuelle Identität über die Konsole hinweg zu wahren.
Provides the design framework and tools for building professional terminal applications with structured layouts.
colors.js is a Node.js terminal color library and console text styling tool. It serves as an ANSI escape code wrapper, providing a high-level API to apply foreground and background colors, styles, and decorative patterns to console output. The library includes a terminal output formatter capable of creating specialized visual effects, such as rainbow and zebra patterns. It employs a mechanism to automatically detect terminal color support or allow for manual overrides of visual styling. The tool covers a broad range of text formatting, including text emphasis attributes like bold, italic, un
Provides the styling primitives necessary for designing visually distinct terminal user interfaces.
react-blessed ist ein React-Renderer für die blessed-Bibliothek, der die Erstellung interaktiver Kommandozeilen-Interfaces mittels einer komponenten-basierten Architektur ermöglicht. Es fungiert als Terminal-UI-Framework, das einen virtuellen Komponentenbaum auf eine Terminal-Umgebung abbildet und es so erlaubt, blessed-Terminal-Widgets und Layout-Knoten über das deklarative State-Management von React zu steuern. Das System unterstützt die Integration benutzerdefinierter Renderer über eine dedizierte Erstellungsfunktion, um die Instanziierung von Knoten anzupassen. Es bietet Mechanismen, um über Referenzen auf ursprüngliche Terminal-Bibliotheksobjekte für manuelle Manipulationen zuzugreifen, und wandelt objektbasierte Style-Eigenschaften in Terminal-Formatierungsregeln um. Das Framework übernimmt die Übersetzung von Komponenten-Props in native Terminal-Event-Listener für Tastatur- und Mausinteraktionen. Es bietet einen strukturierten Workflow für das Design von Terminal-Layouts und das Lifecycle-Management von Kommandozeilen-Interfaces.
Provides a declarative framework for designing complex terminal layouts and navigation patterns.
rich-cli is a terminal rich text renderer and data visualizer that transforms raw text and structured data into styled console output. It functions as a command line markup processor, converting Markdown and custom markup into formatted text with clickable links and colors. The tool specializes in terminal content rendering for various formats, including syntax-highlighted source code, JSON data with consistent indentation, and CSV tables. It also supports the rendering of Jupyter notebooks and provides a terminal content pager for navigating long files and remote content via a scrollable int
Provides a framework for building interactive terminal applications with layouts, themes, and responsive widgets.
This project is a set of design guidelines and a usability framework for building modern command-line interfaces based on updated Unix principles. It serves as a technical reference and manual for creating composable terminal applications that prioritize modularity and text-based communication. The guidelines cover human-centric design rules for managing interactive prompts, output formatting, and user configuration. It provides a standards-based approach to terminal application ergonomics, ensuring tools remain intuitive for humans while remaining functional for automation. The framework ad
Provides a comprehensive set of usability guidelines for designing human-centric and composable command-line interfaces.
cli-spinners is a collection of predefined terminal animation sequences and structured datasets used to signal background activity in console applications. It serves as a library of visual frame sequences and a JSON dataset designed for integration into command line scripts. The project provides a curated collection of spinner frame sequences and timing intervals to create loading indicators. It includes utilities for selecting specific animations or picking a random configuration from the available library of styles. The library covers terminal animation assets and visual feedback mechanism
Offers visual feedback components to improve the user experience of long-running terminal tasks.