EXEPERTAI LAB

Research alpha

Time Machine
EXEPERTAI LAB
GALLERY / COLLECTION
← Browse Astryx gallery
LogStream·component·@astryxdesign/labExperimental

Log Stream

Experimental streaming log viewer: mono grid rows (timestamp | level | source | message) with token-derived level accents, expandable per-row detail panels, follow-scroll live tailing with a "Jump to latest" affordance, and an always-dark terminal variant. Appended rows fade in via @starting-style. Live announcements follow the pinning state: the role="log" region is aria-live="polite" only while following the tail, and aria-live="off" while unfollowed, so a busy stream never floods assistive tech.

@astryxdesign/lab

Usage

Experimental streaming log viewer: mono grid rows (timestamp | level | source | message) with token-derived level accents, expandable per-row detail panels, follow-scroll live tailing with a "Jump to latest" affordance, and an always-dark terminal variant. Appended rows fade in via @starting-style. Live announcements follow the pinning state: the role="log" region is aria-live="polite" only while following the tail, and aria-live="off" while unfollowed, so a busy stream never floods assistive tech.

Typed props

PropType and behavior
entriesLogEntry[] · required
Array of log entry objects to render.
variant'default' | 'terminal' · default 'default'
Visual variant style: 'default' uses theme surface background, 'terminal' uses fixed dark background.
isFollowingboolean
Controlled follow-pinning state to auto-scroll to the newest entry.
onFollowChange(following: boolean) => void
Callback fired when follow-pinning state changes.
maxHeightnumber | string
Maximum container height before vertical scrolling.
hasTimestampsboolean · default true
Show or hide the timestamp column.
labelstring · default 'Log stream'
Accessible label for the log region.
renderEntry(entry: LogEntry) => ReactNode
Custom render function for replacing individual row layout.
xstyleStyleXStyles
StyleX styles for layout customization.