a desk instrument for the board in your drawer
The quiet screen
you can talk to.
Perch turns a Raspberry Pi, or any Linux board that can drive a screen, into the handful of things you actually want at a glance. Then it adds one button that talks to whatever AI you already own, even one running entirely in your house.

drawn live in your browser · the real device flips itself at dusk and dims its own backlight
One video, the whole thing.
The full build, from a bare Pi to a desk that answers back. Every dead end included, because the dead ends are where the learning is.
The build video lands here on launch day
install
A Pi, a screen, two lines.
The installer builds everything, wires up the kiosk and the service, and prints the address of your console. After that you arrange the desk from your laptop while the device follows your drag, live.
- 01cloneyou can read every line before it runs
- 02installbuilds, wires the kiosk, prints your console address
- 03rebootthe screen comes up on its own, forever
clock · weather · news work the moment it boots. Nothing asks for a key.
The installer automates Raspberry Pi OS. On an Orange Pi, a Rockchip board, or an older Pi, the same app runs with one manual kiosk step: other boards.
git clone https://github.com/mayukh4/perch && cd perch
bash install/install.sh
# then, from anything on your network:
# http://<your-pi>.local:7878/console/what's on it
Seven widgets, and a folder for yours.
Time and date, properly set. Optionally a second timezone, for the person you keep missing.
Wind, rain odds, UV, sunrise and a short forecast, straight from Open-Meteo. It never asks for an account.
Headlines from the feeds you actually read. Any RSS or Atom URL.
This Pi, plus any box running the one-line agent: CPU, memory, disk, temperature.
Your house, discovered from one token. Tap toggles; drag across a lamp sets its level.
Any channel with an API key. Connect your own account and real revenue sits on your desk.
Any page in a tile: a Grafana panel, a camera feed, an HTML file you wrote yourself.
The full catalog, community widgets included, lives at perchondesk.com/widgets.
the talk button
Ask the desk. It knows what it's showing.
Every question carries a digest of what is on the screen, so a model with no tools can still answer what the weather is doing and how hot the Pi runs. Speech and brain are separate settings, which means fast cloud transcription can sit in front of a model that never leaves your house.
Fully local
A 0.6B model on the Pi itself, through Ollama. It takes its time, and nothing ever leaves the house.
Any cloud
OpenAI, Anthropic, Groq, OpenRouter, or LM Studio on your desktop. Anything that speaks /v1/chat/completions plugs in.
Your agent
A webhook, or a command line over SSH: Hermes, OpenClaw, Claude Code, codex. Your agent gets a face.
Change one field. The same desk, a different brain. Nothing else moves.
looks
The palette is a choice.
Four looks ship, and each carries its own day and its own night. Making your own is one CSS block. The console previews it live while you type.



hackers welcome
It grows by the widget.
A widget is one folder: a manifest that generates its own settings UI, a component, and an optional server file. It lives in your repo, under your name, and one JSON file lists it in the registry for every Perch on every desk. Point Claude Code or codex at the docs and it has everything it needs.