Terminal inspection · ANSI validation · inline interfaces
loom inspect terminal output and build inline terminal tools.
The loom CLI reports terminal capabilities, measures and evaluates ANSI assets, checks box alignment, views and formats terminal artwork, and demonstrates interactive widgets. The Go library supplies reusable widgets and layout primitives to applications that need to stay in the current terminal.
go install ubunatic.com/loom/cmd/loom@latestProject snapshot · measured 2026-10-26
Key facts
12-week commit activity
2026-10-26View 12-week data table
| Week starting | Commits |
|---|---|
| 2026-08-03 | 2 |
| 2026-08-10 | 0 |
| 2026-08-17 | 0 |
| 2026-08-24 | 0 |
| 2026-08-31 | 0 |
| 2026-09-07 | 80 |
| 2026-09-14 | 117 |
| 2026-09-21 | 314 |
| 2026-09-28 | 352 |
| 2026-10-05 | 263 |
| 2026-10-12 | 134 |
| 2026-10-19 | 321 |
Key Features
- Inline terminal interface preserving shell history and terminal scrollback.
- RichTextEdit styled text editor with bar/block cursor shape routing and box drawing.
- 1,243 test functions with headless PTY canaries and OSC 52 / CSI-u terminal protocol checks.
Verified Engineering Milestones
- 2026-10-01 module migration to ubunatic.com/loom
- 2026-10-03 v0.3.0 release and RichTextEdit milestones
- 2026-10-04 editor navigation and box tools
Stack
Go 1.25, YAML, Cobra, ANSI/OSC/CSI-u terminal protocols, Linux procfs sampling, PTY checks
Terminal inspection
Check the terminal and its output
info
Report terminal dimensions, environment capabilities, colour depth, mouse support, and Unicode width.
measure
Measure visible row widths in terminal cells, accounting for ANSI control sequences and wide characters.
eval
Evaluate terminal dimensions and row geometry, with optional diagnostic annotations.
ANSI asset validation
Validate and normalize terminal artwork
check-box
Validate Unicode box-border alignment across one or more files.
format
Normalize ANSI row widths, trim trailing whitespace, or align complete box edges; write changes only when requested.
loom measure loom-logo.ansi
loom eval loom-logo.ansi
loom check-box docs/data/ansiedit-design-001.ansi
loom format --trim-trailing artwork.ansi
Inspect interactively
View terminal artwork in place
The view command interactively displays an ANSI file while preserving the surrounding terminal context.
Live widget demos
Try the interactive widgets
frame
Wrap file contents in a Unicode border with configurable style, title, padding, and colour.
widgets
Browse the widget catalog, inspect usage, or run live demos for individual widgets and the gallery.
loom frame README.md --title "loom"
loom widgets --list
loom widgets --show Chart
Go library
Reusable inline terminal UI
Applications can use loom directly for selection, editing, layout, and terminal rendering.
go get ubunatic.com/loom
Project details
Architecture
Layer composition
- Terminal
- ANSI, OSC, CSI, terminal, PTY
- Desktop
- Linux
- Inference / AI
- —
- Containers / VM
- —
- Web
- —
Engineering story
loom: the story behind the project
Loom is a Go library for building terminal interfaces from reusable widgets. It began as shared UI code extracted from the uzu project; its purpose now is to let independent command line tools reuse the same input, layout, rendering and int…
Read the engineering story