Developers  /  HUD emulator

Theora HUD emulator

The emulator: three lines, 24 characters, monochrome
Lets FERAL push a card to the display
The glance card format, as plain text

What the agent pushes to the glasses display. One page, because the format is small on purpose.

Shape

A card is three lines of text. Nothing else. No colour, no icons, no graphics, no animation.

FieldTypeRule
lineslist of stringsUp to 3. Fewer is fine; the rest blank
line lengthn/a24 characters. Longer is cut, never wrapped
whitespacen/aRuns of spaces collapse to one

There is no title, no priority, no timestamp field. If the time matters, put it on a line.

Update semantics

  • A push replaces the whole card. There is no partial update.
  • The display holds the last card indefinitely. Cards do not expire on their own; push a blank card to clear.
  • Pushes are last-write-wins. No queue, no history, no stacking.
  • Pushing an identical card is a no-op and does not redraw.

Why it is this small

The display is monochrome, single-eye, and read in a glance while the wearer is doing something else. A card that needs a second look has already failed. Three lines is roughly what someone takes in without stopping.

Design for the glance, not the screen: the first line should be readable alone.

Examples

Time and next event

09:41
Standup in 8 min
Room 2

Heart-rate trend: a trend, not a diagnosis

Resting HR
trending down 4 days
since Tuesday

A notification

Sam
"are we still on for 6?"
reply / dismiss

Pushing one

Command line:

python3 hud.py --push "09:41|Standup in 8 min|Room 2"

From Python:

from hud import push
push(["09:41", "Standup in 8 min", "Room 2"])

From the agent: the glance tool in tools/glance.py exposes a show_glance action, so FERAL can push a card the same way it calls any other tool.

Health language

Cards describe what a sensor measured and how it is trending. They do not name conditions, do not advise, and do not warn. "Resting HR trending down 4 days" is a card. Anything that reads as a finding is not.

Theora is a general wellness product. It is not a medical device, and it does not diagnose, treat, cure or prevent any disease.