Tool Open source

TermDOM

TermDOM is a JavaScript/TypeScript library for building terminal applications with HTML, CSS, and DOM APIs. It renders DOM nodes into a grid of terminal character cells, supporting CSS stylesheets and the box model, flexbox and table layout, text-width handling for CJK and other characters, forms, scrolling, Web Components, selection, and keyboard, mouse, focus, paste, and input events.

View repository Visit site Mentioned in 1 video ↓

Overview

It implements a browser-like rendering pipeline against character cells rather than pixels: styles and layout are recomputed for mutated content, the result is painted into a cell buffer, and differences from the previous frame are written to standard output as ANSI escape sequences. Input escape sequences are decoded into events dispatched to DOM nodes, and utilities such as querySelector(), MutationObserver, ResizeObserver, and getBoundingClientRect() operate on the cell-based layout.

What TermDOM is used for

1 use taken from transcripts — each links to the moment in the video.

  • Lets web developers build terminal interfaces with HTML, CSS, and DOM APIs. It renders DOM nodes into character cells and supports layout, tables, forms, scrolling, input events, and incremental redraws.

Videos mentioning TermDOM

1 in the library.