Browse documentation
All documentation
Getting started
Screens & scenes
Widgets
Integrations
The assistant
Household & presence
Reception & visitors
Menus, art & broadcast
Account, plans & data
API & self-hosting
Troubleshooting

What Mirra is

Mirra turns any screen that can run a web browser into a wall display and, when you speak to it, into an assistant with a face — managed from a portal in your browser.

The short version

Mirra is software, not hardware. You hang a screen somewhere useful — a hallway, a kitchen, a reception desk — point its browser at Mirra, and pair it to your account with a six-character code. From then on you decide what it shows from a portal in an ordinary browser, and the wall follows within seconds.

There are two halves to it. The display half puts a clock, your calendars, the weather, photographs, tasks, art or a menu board on the glass. The assistant half is what happens when you press the microphone and speak: a face fades up, listens, answers out loud, and its mouth moves with the words. You can run the first half and never touch the second — there is no switch to throw, because the assistant only ever runs when somebody summons it, and it is the only part of Mirra that spends your monthly credits.

A screen you never speak to draws no assistant credits at all: usage is counted per conversation and per web search, not per screen.

The four moving parts

Almost every question about Mirra — why something did not update, where a token is stored, what still works when the broadband drops — is answered by knowing which of four pieces is doing the work.

The portal
The website you sign in to. It holds your account, your scenes, your integrations and your settings, and it serves the REST API everything else talks to. It is also the public site: signed out you see the marketing pages, signed in you are sent straight to your dashboard.
The screen app
What actually runs on the display. It shows the pairing code before it belongs to anybody, then draws your widgets. It is also the piece that sits inside your house, so it — not the cloud — holds the connection to Home Assistant, to WLED controllers and to a Hue bridge, and it is where face recognition runs.
The relay
A WebSocket hub every paired screen keeps a connection open to. It carries changes out to screens the moment you save one, and it runs an assistant turn: speech to text, then the language model, then speech back with the timing information the face uses to lip-sync.
The Pi agent
An optional Python daemon for a Raspberry Pi, intended to add wake-word listening and on-device audio. Today it is a skeleton — it serves a local WebSocket and emits a heartbeat, and nothing else. Every sensing feature that works today works in the browser.

Only the first three are needed. A Raspberry Pi makes an excellent Mirra screen without the agent running at all — it is the browser on the Pi that does the work.

How a change reaches the wall

When you rearrange a scene and press Save & push, nothing is uploaded to the screen. The portal saves your layout and tells the relay; the relay finds that screen's open connection and passes on a short message saying the layout has changed; the screen then asks the portal for its configuration again and redraws.

That round trip is why a change appears in a second or two rather than on a schedule, and why a screen that was switched off catches up as soon as it comes back — it fetches the current configuration on connect, so there is no queue of missed updates to replay. Every screen also refetches its configuration once a minute regardless, as a backstop for a push that never arrived.

You press Save & pushIn the portalThe relayFinds that screen's openconnectionThe screen is told"Your layout changed"The screen refetchesand redrawsA second or two later
What happens between pressing Save & push and the wall changing.

The words Mirra uses

Five words do most of the work, and two of them are used loosely elsewhere in the industry, so they are worth pinning down.

Household
Your account, and the thing everything else belongs to. You name it when you register — leave it blank and it becomes "your name's home". Screens, scenes, calendars, people, the plan and the assistant credits are all held by the household, which is why two people signing in to the same household see the same walls. In a commercial building the word still means the account; it is the same object, whatever is on the wall.
Screen
One paired display. It has a name you chose, an orientation, a rotation, an optional exact pixel size, its own schedule and its own presence settings. Pairing is what turns an anonymous browser showing a code into a screen.
Scene
A saved arrangement of widgets on a twelve-column grid. A scene belongs to the household rather than to one screen, so a scene marked Shared can be put on any screen you own. Each screen has one default scene, and the scheduler can move it to others by time of day.
Widget
One thing on a scene — a clock, an agenda, a photo frame, a light switch. Widgets sit on the grid and are free to overlap, which is how you get a full-bleed photograph with the time laid over it. They are curated and ship with Mirra; you cannot upload widget code of your own.
Integration
An outside system Mirra reads or drives: calendars, Home Assistant, WLED, Spotify. An integration you have switched on adds its widgets to the editor's palette; one you have not stays out of the palette entirely, so the list of things you can add is the size of your home rather than the size of the product.

What runs where

The split matters most for privacy and for what survives an outage. Anything involving a camera or a microphone in your house is handled on the screen itself: face recognition runs in the browser against models served from the app, frames are compared and discarded, and only a name and a time are ever recorded. The connection to Home Assistant is held by the screen too, so commands to your lights never leave your network and there is no tunnel from the cloud into your house.

In your homeIn the cloudThe screen app in a browserThe portal — pages, API, databaseHome Assistant, WLED and Hue on your LANThe relay — pushes and voice turnsPi agent (optional, skeleton today)Speech and language services
Which half of Mirra each piece lives in.

What Mirra does not do

Some of these are deliberate and some are simply not built yet, and it is worth knowing which is which before you plan around them.

  • Widgets are curated and ship with Mirra. There is no way to run your own code on a screen, and that is on purpose — these screens can see your calendar and drive your front door.
  • The assistant needs the internet. Speech recognition, the language model and the voice all run in the cloud, so with the connection down the mirror has nothing to answer with.
  • Wake-word listening is not available in the browser. You press the microphone button, or type. The wake word field on the assistant settings page is labelled for the Raspberry Pi and says so underneath — it takes effect once the Pi agent implements it, which it does not yet.
  • A screen that is already running keeps showing the configuration it last received, and Home Assistant control carries on over your own network. A screen that restarts while the internet is down has nothing to load, because the app itself is served from Mirra and nothing caches it offline.
  • Calendars are shown, not edited. Mirra reads your diary; it does not create or change events.

What you need to start

Less than people expect. Any computer with a reasonably modern browser is a Mirra screen, which is the cheapest way to find out whether you like it — open the screen app on a spare laptop, put the browser full screen, and pair it. Nothing to install and nothing to buy.

For something permanent, a Raspberry Pi behind the monitor is the usual answer: it boots straight into the display, restarts itself if the browser dies, and is the only route that supports a wired button. A mini PC costs more and does more. A smart TV browser often works and is the least predictable of the lot.

A camera and a microphone are only needed for the assistant, presence and gestures. Everything else — clock, calendars, photographs, Home Assistant, menu boards — works on a screen with neither.

Related

  • Getting your first screen on the wallThe whole path from a new account to a working display: create a household, show the pairing code, enter it in the portal, and edit what appears.
  • The first-run checklistThe Getting set up card on your Screens page lists five things worth doing and one optional extra, ticks each one off by itself, and can be put away for good.
  • Screen types, and what a screen can doWhat hardware can act as a Mirra screen, what each display reports about itself, and exactly what the capability record does and does not cover.
  • The scene editorThe scene editor is where you arrange a screen's widgets on a twelve-column grid, watch the real widgets render behind them, and push the result to the wall.
  • The assistant: how a conversation worksHow you summon Mirra, what happens between hearing you and answering you, which tools it can reach, where the transcript goes, and what a conversation costs against your monthly allowance.