API Reference cellium v#0.1.0

View Source

Modules

box

Box widget module for rendering rectangular containers with borders.

Box styles and rendering functions for various border types.

Button widget module for interactive clickable buttons.

This module defines the cellium behaviour, which is the core of a Cellium application.

cellium public API

Shared logic for managing a virtual terminal buffer (shadow buffer). Operates on a Map where keys are {X, Y} and values are {Char, Fg, Bg}. Supports nested clipping to restrict drawing to specific rectangular areas.

Event manager for handling terminal and external events.

cellium top level supervisor.

Checkbox widget module for togglable boolean options.

Container widgets are used to arrange other widgets in a specific layout. They support both horizontal and vertical orientations and handle the distribution of space among their children.

css

Dialog widget module for floating, centered containers.

Frame widget module for rendering rectangular containers with borders and titles.

Gauge widget module for displaying labeled value indicators.

Header widget module for displaying section titles.

The layout module is responsible for calculating the positions and dimensions of all widgets in the tree.

List widget module for rendering scrollable lists of items.

A module for interacting with the native terminal, providing functions for initializing, shutting down, drawing, and handling input events. It aims to abstract away terminal-specific escape codes and provide a consistent interface for terminal-based applications.

Progress bar widget module for displaying task completion.

Radio button widget module for mutually exclusive options.

Screen management module for handling UI screen lifecycle and transitions.

Spacer widget module for adding empty space in layouts.

Spinner widget module for displaying loading/activity indicators.

Status bar widget module for displaying application status.

tab

Tab widget module for rendering tabbed containers.

The table widget module provides functionality for rendering tabular data with borders, headers, and rows. It supports various box styles and can render multi-column tables with configurable column widths.

Table row widget for rendering individual rows within a table.

A mock terminal implementation that stores the screen state in a Map buffer. This allows for verifying what was drawn to the screen during tests.

A wrapper for the terminal implementation that allows switching between the native terminal, dummy terminal, and mock terminal.

Text widget module for displaying static text.

Text input widget module for editable text fields.

Toggle widget module for on/off switches.

View server responsible for rendering the widget tree to the terminal.

Base widget module providing common widget functionality.