PANELITH DOCS Open the interactive docs ↗

Guide · Panelith 0.1.0 · plain HTML edition; the interactive edition has search and live examples

Glossary

Action. What a handler or command returns and the shell applies: open a pane, set state, notify, spotlight. Constructors in panelith.actions; models in the schema.

App. The subclass that lists kinds, commands and lists and sets the shell defaults (brand, theme, canvas, top bar, sigil, modifiers). One instance serves every visitor.

Blocks. The widget whose body is a list of block dicts built in Python by Pane.view(state): grid, message, toolbar, countdown, stats, cards, chips, text.

Canvas. The grid of panes: up to max_columns by max_rows, split with \ and -, resized by dragging dividers.

cid. A pane's content id, allocated by the browser (c1, c2, …) and used by every action that names a pane. Two visitors can both have a c1.

Command. An entry in the command bar with a title, keywords, an optional hotkey and a scope; run(ctx) returns actions.

Context (ctx). The object every handler receives: the app, the pane, the focused tab, every open tab, the viewport, the command's arguments.

Drawer. The slide-in panel on the right that shows a list source with a search box, facets and an order toggle.

Event. A named message from a widget (or send_event) to a pane's handler, with a JSON payload: row, submit, trace, bump.

Family. A named colour (independent, problem, author, assessment, or your own) a kind belongs to; colours its glyph, its tile and its tethers.

Glyph. The small icon on a tab and a launcher tile: a built-in name or Glyph(paths=[...]).

Hotkey. A key under the app's modifier chord (alt+shift by default) bound to a command.

Kind. A type of pane: a Pane subclass with a kind id. The manifest carries one KindSpec per kind.

Launcher. The tiles an empty pane shows: one per launcher kind, one per launcher command, plus the browse row.

List source. A ListSource subclass providing rows for the drawer, the command bar (under its sigil) and ListPanes; live ones are searched by the server.

Manifest. The one JSON document the shell builds itself from: everything the app declared.

Pane. A slot in the canvas holding one or more tabs; also the base class of every kind.

Route. The URL hash (#/guide/panes#events) an app can read in on_route and write with set_route.

Session. A visitor: a cookie, a pane table and the browser's event streams. Idle sessions are swept.

Sigil. The first character typed in the command bar that picks what it searches: > for commands, one per list source that claims one.

Spotlight. An action that rings a shell element (by its data-pl hook) with a caption, or walks a tour of several.

State. A pane's dict: rendered by its widget, changed by its handlers, mirrored by the server.

Sub-tab. A second strip inside a pane for kinds with subtabs = True; the text widget keeps one buffer per sub-tab.

Tab. One piece of content in a pane, with a glyph, a name and a close ×. Drag a tab to another pane to move it; hold at an edge to split.

Tether. The relation between a pane and the children it opened: chain marks on the divider, folding together, family colour inherited.

Widget. The shell component that renders a kind's state: markdown, html, text, keyvalue, table, form, output, blocks, or a plugin's.