the magic mirror

The room says good morning.

built, not bought · running since 2022 · lives at 07:45 in the day

A two-way mirror with a display behind it: time, weather, the first calendar line, floating in the glass. The oldest created thing in the room, and the first one you meet.

The magic mirror in a dark room at 07:45, white type floating in the glass
brain
Raspberry Pi 4
panel
24 inch IPS behind two-way glass
software
MagicMirror, self-hosted
frame
oak, hand joined
running since
2022

The first thing the room says.

At 07:45 the office is still dark, and the mirror is already awake: the time, the weather, the first line of the calendar, floating in glass where my reflection should be. It is the room’s way of saying it knows I am here.

It is also where all of this started. The mirror was the first thing I built for this room, years before the panel or the agenda. Every created thing in here descends from the evening I first put a display behind glass and watched text float.

The build, in short.

The mirror frame open on the bench, panel and two-way glass side by side

Glass over light

Two-way glass only works over true black. The interface is white type on nothing; any background glow kills the trick.

The oak frame is joined, not screwed. It hangs like a mirror because it is one, most of the day.

The full build documentation with every step lands here after the shoot.

Doing its thing.

a short loop, muted, plays when it enters view

Steal this part.

The config and the frame drawings. The software is open source and better than anything I would write; my part is the glass, the oak, and the restraint in the module list.

mirror-config.jsmagicmirror, self-hosted
let config = {
  modules: [
    { module: "clock", position: "top_left" },
    { module: "calendar", position: "top_left" },
  ],
};

Up close.