BHLABS ← BACK TO THE REEL
Scene 01 · The iOS studio

Native apps,
made after hours.

Embers.cafe is where my iOS work lives. Small apps, written in Swift, each one built to do a single job properly on the device it runs on. Nothing is rushed out to hit a date, because nobody is waiting on a roadmap but me.

Visit embers.cafe → See the apps
2Apps live
2In the works
100%Native Swift
1Person, start to finish
How they're built

Small apps,
built properly.

Native, not wrapped

Swift and SwiftUI throughout. No web view pretending to be an app, so gestures, animation and battery behave the way iOS users expect.

One job each

Every app does one thing and stops. That is why they stay quick to open, easy to explain and cheap to keep running.

Shipped when ready

Built in the evenings, released when the last rough edge is gone. Waiting a fortnight beats shipping something I would need to apologise for.

Edge for the backend

Anything that needs a server runs on Cloudflare, close to the person holding the phone, and costs almost nothing to keep alive.

The catalogue

Two live,
two on the bench.

KumaAlert app icon

KumaAlert

Uptime Kuma monitoring, on your wrist. Your self-hosted monitors on the home screen and the watch face, so an outage reaches you before your users do.

Live
LumenCounter app icon

LumenCounter

Daylight, tracked from sunrise to sunset. A quiet record of how much light you actually got today, for the months when the answer is not much.

Live
PushCloud app icon

PushCloud

Push notifications, built for the AI era. A simple way for scripts, servers and agents to reach your phone when something needs a human.

Soon
Wallos Go app icon

Wallos Go

Your self-hosted Wallos subscriptions, in your pocket. See what this month costs, renew in a tap, and get reminded before the money leaves, even when your server is offline.

Soon
Why it exists

Three rules,
no roadmap.

01

Build the thing I wanted to exist

Each app started as a gap in my own day. That is a better brief than a market gap, and it means there is always one user who cares whether the detail is right.

02

Keep it small enough to finish

An evening project dies the moment it grows a backlog. Scope stays tight on purpose, so the app reaches the App Store instead of the graveyard.

03

Look after it afterwards

Shipping is the start. Bug reports get answered by the person who wrote the bug, and every app on the shelf still gets updates.

Final frame · say hello

Got an app
in mind?

I take on a small amount of iOS work alongside the studio. Tell me what it needs to do and I will tell you honestly whether I am the right person to build it.

Watch the reel ↗