Skip to content

@matthesketh/ink30 components for terminal UIs

The most comprehensive component library for Ink. Build production-grade terminal applications with React.

Why @matthesketh/ink?

The Ink ecosystem is top-heavy — the core framework and a handful of official components are solid, but everything else is fragmented, outdated, or missing entirely. Most community packages target Ink 2.x or 3.x and are effectively abandoned.

@matthesketh/ink fills every gap with 30 production-tested packages covering the full spectrum of terminal UI needs:

CategoryPackagesWhat's Covered
Core4Viewport, scrolling, input routing, split panes
Data Display10Tables, charts, gauges, trees, logs, markdown, diffs, timelines, pipelines, pager
Input8Fuzzy select, textarea, file picker, masked input, forms, checkbox, switch, radio
UI Chrome8Status bar, modal, toast, keybindings, task list, tabs, breadcrumb, divider

All packages are:

  • Built for Ink 5 and React 18
  • Written in TypeScript with full type declarations
  • Zero external dependencies (except peer deps on ink + react)
  • Tested with 496 tests across the full suite
  • Designed to work together via the input dispatcher pattern

Released under the MIT Licence.