# textualize/rich-cli

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/textualize-rich-cli).**

3,686 stars · 110 forks · Python · MIT

## Links

- GitHub: https://github.com/Textualize/rich-cli
- Homepage: https://www.textualize.io
- awesome-repositories: https://awesome-repositories.com/repository/textualize-rich-cli.md

## Topics

`markdown` `rich` `syntax-highlighting` `terminal` `terminal-colors`

## Description

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 interface.

Broad capabilities include CLI data visualization, terminal workflow automation through standard input piping, and the ability to export rendered output as HTML files. The system also provides utilities for capturing screen screenshots as SVG files.

## Tags

### Development Tools & Productivity

- [CLI Data Visualization](https://awesome-repositories.com/f/development-tools-productivity/cli-data-visualization.md) — Transforms raw text and structured data into formatted tables and styled console output.
- [JSON Formatting and Sorting](https://awesome-repositories.com/f/development-tools-productivity/json-formatting-and-sorting.md) — Pretty-prints JSON files with consistent indentation and color highlighting for improved readability. ([source](https://cdn.jsdelivr.net/gh/textualize/rich-cli@main/README.md))
- [Command Palettes](https://awesome-repositories.com/f/development-tools-productivity/command-execution-interfaces/command-palettes.md) — Provides a searchable command palette for quick discovery and execution of internal application actions. ([source](https://textual.textualize.io/api/app/))
- [Notebook Rendering](https://awesome-repositories.com/f/development-tools-productivity/jupyter-notebook-integrations/notebook-rendering.md) — Displays Jupyter notebooks in the console with syntax highlighting for code and formatting for text. ([source](https://cdn.jsdelivr.net/gh/textualize/rich-cli@main/README.md))
- [Custom Key Action Bindings](https://awesome-repositories.com/f/development-tools-productivity/terminal-action-bindings/custom-key-action-bindings.md) — Maps keyboard shortcuts to application actions and displays these bindings within the user interface. ([source](https://textual.textualize.io/api/app/))
- [Terminal Automation](https://awesome-repositories.com/f/development-tools-productivity/terminal-automation.md) — Processes standard input from other command line tools to render rich text and export results.
- [Terminal Pagers](https://awesome-repositories.com/f/development-tools-productivity/terminal-pagers.md) — Manages and formats long text output for terminal viewing via a scrollable interface.

### User Interface & Experience

- [Console Markup Support](https://awesome-repositories.com/f/user-interface-experience/rich-text-renderers/console-markup-support.md) — Processes Markdown and custom markup into styled, rich text with clickable hyperlinks for the terminal.
- [Screen Navigation Stacks](https://awesome-repositories.com/f/user-interface-experience/application-screen-assembly/screen-navigation-stacks.md) — Handles the installation and switching of different screens to control the application navigation stack. ([source](https://textual.textualize.io/api/app/))
- [Code Syntax Highlighting](https://awesome-repositories.com/f/user-interface-experience/code-syntax-highlighting.md) — Displays source code with syntax highlighting, line numbers, and indentation guides. ([source](https://cdn.jsdelivr.net/gh/textualize/rich-cli@main/README.md))
- [Command Line Interface Design](https://awesome-repositories.com/f/user-interface-experience/command-line-interface-design.md) — Provides a framework for building interactive terminal applications with layouts, themes, and responsive widgets.
- [CSV Table Renderers](https://awesome-repositories.com/f/user-interface-experience/data-tables/csv-table-renderers.md) — Renders comma-separated or tab-separated values as aligned tables within the terminal. ([source](https://cdn.jsdelivr.net/gh/textualize/rich-cli@main/README.md))
- [Terminal Data Visualizers](https://awesome-repositories.com/f/user-interface-experience/data-visualization-tools/data-visualization/terminal-data-visualizers.md) — Renders structured data such as CSV tables and JSON with color-coding in the console.
- [Event-Driven Input Handlers](https://awesome-repositories.com/f/user-interface-experience/form-and-input-management/input-handling/event-driven-input-handlers.md) — Maps keyboard and mouse inputs to application actions using a centralized event-driven dispatch system.
- [Widget Tree Compositions](https://awesome-repositories.com/f/user-interface-experience/nested-ui-composition-patterns/widget-tree-compositions.md) — Assembles terminal interfaces by nesting functional widgets within hierarchical layout containers.
- [Rich Text Renderers](https://awesome-repositories.com/f/user-interface-experience/rich-text-renderers.md) — Transforms and displays structured rich text, syntax-highlighted code, and data within the terminal.
- [Styling & Markup](https://awesome-repositories.com/f/user-interface-experience/styling-theming-systems/content-styling/styling-markup.md) — Processes custom markup tags to apply specific styles and colors to console text. ([source](https://cdn.jsdelivr.net/gh/textualize/rich-cli@main/README.md))
- [Terminal Content Rendering](https://awesome-repositories.com/f/user-interface-experience/terminal-content-rendering.md) — Visualizes structured text content, including Markdown, JSON, and CSV, within a terminal interface.
- [Terminal User Interfaces](https://awesome-repositories.com/f/user-interface-experience/terminal-user-interfaces.md) — Provides a comprehensive framework for building, styling, and managing interactive text-based terminal user interfaces. ([source](https://textual.textualize.io/))
- [Markup Processors](https://awesome-repositories.com/f/user-interface-experience/text-styling/markup-processors.md) — Parses custom tagging languages and Markdown into visual styles for console display.
- [User Interaction Handling](https://awesome-repositories.com/f/user-interface-experience/user-interaction-handling.md) — Captures and processes keyboard and mouse input events to trigger application logic within the TUI. ([source](https://textual.textualize.io/))
- [Terminal Mouse Event Capturers](https://awesome-repositories.com/f/user-interface-experience/mouse-event-handlers/terminal-mouse-event-capturers.md) — Captures mouse motion, clicks, and wheel events specifically using terminal mouse tracking protocols. ([source](https://textual.textualize.io/api/app/))
- [Responsive Breakpoint Mapping](https://awesome-repositories.com/f/user-interface-experience/styling-theming-systems/css-layout-systems/constraint-based-layouts/responsive-breakpoint-mapping.md) — Applies specific style classes based on screen width breakpoints to adapt the TUI interface. ([source](https://textual.textualize.io/api/app/))
- [Responsive Layout Customizers](https://awesome-repositories.com/f/user-interface-experience/terminal-user-interfaces/visual-styling-presentation/interface-appearance-customization/component-appearance-customizers/responsive-layout-customizers.md) — Adapts the terminal interface layout and styling based on the current window width breakpoints.

### Web Development

- [TUI Layout Engines](https://awesome-repositories.com/f/web-development/terminal-layout-engines/component-based-layouts/tui-layout-engines.md) — Provides a full TUI layout engine for calculating cell-based geometry and alignment in terminal interfaces.

### Content Management & Publishing

- [Terminal Markdown Renderers](https://awesome-repositories.com/f/content-management-publishing/terminal-markdown-renderers.md) — Converts Markdown text into formatted output optimized for terminal emulators with clickable links. ([source](https://cdn.jsdelivr.net/gh/textualize/rich-cli@main/README.md))
- [HTML Exports](https://awesome-repositories.com/f/content-management-publishing/content-formats-exporting/export-formats/html-exports.md) — Saves rendered terminal output as an HTML file for viewing in web browsers. ([source](https://cdn.jsdelivr.net/gh/textualize/rich-cli@main/README.md))

### Data & Databases

- [Terminal Output Paging](https://awesome-repositories.com/f/data-databases/page-item-limit-controls/terminal-output-paging.md) — Provides a scrollable interface with keyboard navigation for reading long rendered content. ([source](https://cdn.jsdelivr.net/gh/textualize/rich-cli@main/README.md))
- [Navigation Stacks](https://awesome-repositories.com/f/data-databases/persistent-application-state/screen-state-managers/navigation-stacks.md) — Manages application state through a stack of full-screen views to handle navigation and visibility.
- [Fuzzy Matching](https://awesome-repositories.com/f/data-databases/fuzzy-matching.md) — Implements fuzzy matching algorithms to identify similar strings and highlight matches in the search interface. ([source](https://textual.textualize.io/api/command/))
- [Remote File Fetching](https://awesome-repositories.com/f/data-databases/remote-data-fetching/cms-content-fetching/remote-file-fetching.md) — Allows fetching and rendering of remote files from secure web addresses for display in the terminal. ([source](https://cdn.jsdelivr.net/gh/textualize/rich-cli@main/README.md))

### Part of an Awesome List

- [TUI Theme Application](https://awesome-repositories.com/f/awesome-lists/devtools/theming-and-customization/ui-theme-customization/tui-theme-application.md) — Supports loading and applying color schemes to terminal user interfaces from external sources. ([source](https://textual.textualize.io/api/app/))

### Business & Productivity Software

- [Terminal Document Viewers](https://awesome-repositories.com/f/business-productivity-software/terminal-document-viewers.md) — Allows users to read and navigate long files and Jupyter notebooks directly within the console.

### Operating Systems & Systems Programming

- [Standard Stream Piping](https://awesome-repositories.com/f/operating-systems-systems-programming/standard-stream-piping.md) — Integrates with shell pipelines by reading formatted content from standard input. ([source](https://cdn.jsdelivr.net/gh/textualize/rich-cli@main/README.md))
- [Output Pagers](https://awesome-repositories.com/f/operating-systems-systems-programming/terminal-command-line-environments/terminal-pagers/output-pagers.md) — Provides a built-in pager for scrolling and navigating long rendered content via keyboard shortcuts. ([source](https://cdn.jsdelivr.net/gh/textualize/rich-cli@main/README.md))
