Smart.Terminal displays a stream of lines, such as an instrument session or an event log.

Lines arrive faster than they can be read, are kept to a fixed number and have to stay readable while the terminal scrolls. New lines are appended without re-rendering the existing ones, the ring buffer removes the oldest lines from the DOM so the page does not grow, and auto-scroll pauses while you scroll up to read and resumes when you scroll back to the end.

An SCPI session

Type a command and press Enter. Try *IDN?, MEAS:VOLT:DC? or SYST:ERR?.

A live event log

The log runs at about 20 lines per second. Scroll up while it runs and the view stays in place. Scroll back to the bottom and the terminal follows the newest lines again.

ANSI colours

The eight basic SGR foreground colour codes are supported, which is what bench instruments and serial devices emit.