KQ-1851 · CORE/PLANE

Core Plane

A plane of ferrite memory cores strung on fine wires, drawn on a canvas: eight columns from bit 7 to bit 0 and as many rows as fit, each core a small ring at ±45° threaded by its row, column and sense wires, lit when it holds a 1, and each row labelled with its character and hex. Typing writes each character's UTF-8 bytes into the next row the way the real thing does: a spark runs along the row wire while sparks run down the column wire of every bit that changes, and where each pair meets the core flips with a stutter scaled by flicker and a tiny burst, a bit every few milliseconds left to right; Backspace erases the last row, older rows fade, and an idle job reads random cores with a faint blink. The writing happens in a real text input, so the keyboard is simply typing; reduced motion swaps the sparks for a short cross-fade timed on durations.base.

KQ-1851 · CORE/PLANE

Gaugeworks Core Store

Type to write, a byte to a row

Each character you type is written to the next row of cores, one bit per column; Backspace erases the last row.

e · 0x65 · 01100101 · 4 bits set

Install

One command — the source lands in your repo. Or copy it from the Code tab.

$ pnpm dlx shadcn@latest add @kinetiq/core-plane

Props

value / defaultValue
string
default ""
The text written to the plane; controlled or initial.
onValueChange
(text: string) => void
default —
Fires as the visitor types, with the new text.
cores
number
default 10
Diameter of a core, px, 6 to 18: finer cores fit more rows.
flicker
number
default 0.6
How hard a core stutters as it flips, 0 (a clean flip) to 1.
wire
"copper" | "brass" | "silver" | string
default "copper"
The wires' colour: a preset, or any CSS colour.
fade
number
default 0.6
How much older rows fade as new ones are written, 0 (none) to 1.
idle
boolean
default true
Let a background job read random cores when the plane is idle.
readRate
number
default 1.2
How many cores the idle job reads a second.
bitDelay
number
default 26
Time between bits of a write, ms.
maxLength
number
default 64
Most characters the input takes.
placeholder
string
default "Type to write"
Shown in the empty input.
label
string
default "Write to core memory"
The input's accessible name.
height
number
default 176
Height of the plane, px.
sound
boolean
default false
Play a tick for every core that flips while you type. Off unless asked for.
paused
boolean
default false
Hold the plane still: writes land without sparks and the idle job rests.
dpr
number
default 2
Cap on the canvas's device pixel ratio, at most 2.
disabled
boolean
default false
No typing; the plane dims.
className
string
default —
Classes for the wrapper.