rendering library

Provides utilities for rendering text to a terminal-like UI.

This library provides a set of classes and utilities that does not depend on any specific terminal implementation, but rather provide a common interface and set of utilities for rendering text and styled grapheme cells.

Most users will interact with the Buffer class, which provides a 2D grid of optionally styled cells, or with the text-oriented classes like Line, Span, Style, and Color.

Classes

Cell
A buffer cell which can be styled and contain a single character.
Color
A sealed type representing multiple types of colors.
Line
A line of text, consisting of one or more Spans.
Span
Represents part of a line that is continguous and styled the same way.
Style
Control over the visual appearance of displayed elements.

Enums

Alignment
Alignment of text within a container.
Color16
4-bit ANSI color palette that includes 8 basic colors and 8 bright colors.

Extension Types

Buffer
A buffer that maps to the desired content of a terminal after rendering.