[ANN] Tachikoma.jl — A terminal UI framework for Julia

Tachikoma v1.1 — Terminals, REPLs, and Data Tables

What’s a TUI framework without the ability embed a terminal inside your terminal? Now you can go full Inception on your command line.

showcase

What’s New?

Terminal & REPL Widgets

Embed a fully functional PTY-backed terminal or an in-process Julia REPL directly into your app as a widget. Shell commands, Julia expressions, tab completion, syntax highlighting, etc.

PagedDataTable

PagedDataTable | Tachikoma.jl

A new data table widget for large datasets with server-side pagination, sorting, per-column filtering (contains, regex, numeric comparisons), global search, and keyboard-driven navigation. Comes with an InMemoryPagedProvider out of the box, plus a SQLitePagedProvider via the SQLite extension.

Other Improvements

  • Event-driven app loop, replaces polling in several spots with a wake channel; lower CPU usage, more responsive input handling
  • Adaptive sixel color quantization, dynamically adjusts palette size for better image quality
  • Dead space compression and per-frame GIF delays, resulting in smaller recorded GIFs with accurate timing
  • Many other bug fixes

Installation

pkg> add Tachikoma

Or to update:

pkg> update Tachikoma

26 Likes

This is such a cool project. This feels like a real natural fit for Julia, and a highlight for the language :slight_smile:

5 Likes