Back to all articles
EngineeringSeptember 7, 20266 min read

How We Built WallMRR: Next.js 15, Go, PostgreSQL, and Low-Power Hardware

Oguzhan Tasimaz

Founder, WallMRR

Building software that runs continuously on wall-mounted hardware presents a completely different set of engineering constraints than typical SaaS apps.

A TV browser is often underpowered. It might be running on an Amazon Fire TV Stick with 1GB of RAM, an aging LG WebOS browser, or a Raspberry Pi Zero tucked behind a conference room display. If your web app leaks even a few kilobytes of DOM nodes or WebSocket frames per minute, the browser will crash within 48 hours.

Here are the core architectural decisions we made to guarantee indefinite uptime:

1. Strict Memory Hygiene: WallMRR runs without unbounded array accumulators. Telemetry state is stored in fixed-size buffers, and DOM trees are rendered statically using lightweight React primitives.

2. OLED Burn-in Prevention: TV screens left on identical layouts for months are vulnerable to pixel burn-in. WallMRR introduces micro-pixel shifting and subtle circadian color adjustments that prevent static retention without distracting the room.

3. High-Performance Go Core: The backend is built with Go, Echo, and pgx. Polling tasks against Stripe, Polar, and RevenueCat execute concurrently with strict exponential backoff and rate-limit awareness.

4. Six-Character TV Pairing: Typing credentials on a TV remote with a directional pad is an exercise in agony. We built a zero-credential pairing workflow: the TV generates an ephemeral 6-digit code, you type it on your phone or laptop at wallmrr.com/pair, and the screen securely activates within 400 milliseconds.

Ready to mount your MRR on a wall?

Connect your payment provider in 60 seconds. Free forever for your first screen.

Start free