Ultralab

Household control plane

The stuff you pay for every month, running on a machine in your cupboard.

A few hundred people wrote free replacements for Google Photos, Dropbox, Spotify, 1Password and the rest, and gave them away. Ultralab is the one screen that installs them, keeps them apart from your files until you say otherwise, and tells you the truth about what each one is about to do to your machine.

Windows and Linux. Free. No account, no telemetry, nothing phones anywhere.

What it actually is

A shop, not a parts bin

Fifty-six applications, arranged by what you would want one for rather than where it sits in a stack. Search dropbox and it finds Nextcloud. Every card says what the thing stands in for, and what it will cost your machine in memory.

A fitting room

The Sandbox runs anything in its own compose project, its own volumes, its own network, with every port moved out of the way and no Dataset mounted in. Try it, keep it or bin it. What it cannot contain — a host device, the host network, root — it refuses outright rather than pretending.

Nothing happens by surprise

Before you install anything it reads out every container it will start, every folder it will mount and whether it can write there, every port it opens, and everything it is handed that the sandbox could not hold on to.

Setups you can swap

Get the lab working the way you want, save it as a Build, then go and build the same job a different way. Put the old one back whenever you like, or try a new one in the Sandbox beside the one that is running.

The front door is a VPN

Nothing here opens a port to the internet. Remote access is a WireGuard peer, because forwarding an application's admin page is how households get broken into.

It composes; it does not replace

Jellyfin is Jellyfin. Immich is Immich. Ultralab writes the compose file, pins the image to a digest, keeps the passwords out of the YAML and stays out of the way.

What it will not do

A control plane that overpromises is worse than none, so the refusals are written down and kept to:

Not a backup. Ultralab keeps a catalogue and can snapshot it, and a Build saves the shape of a lab. Neither is a copy of your photos. Install something that makes one, put it somewhere this machine cannot reach, and read it back once.

Where to start

Never run a home lab before

The manual starts from what a home lab even is, and what machine you need.

Start at the beginning →

Know what you are doing

Get the binary, run it, and the app explains itself page by page.

Downloads and checksums →

Want somebody else's setup

Working configurations you can load straight into your own lab.

Builds →