early development

A battery-powered platform
for life without internet.

Minimal OS. Portable services. Build, sign, and ship it all on your own hardware.

What we're building

Six components that together form a complete stack, from the OS running on the device to the tools you use to build and publish services.

Project status

Offline Lab is in early development. The OS is the current focus. Everything else builds on top of it.

Phase 1 — Offline Lab OS

The read-only operating system. Buildroot-based, A/B partition updates, systemd portable services as the only way to extend the system. Currently targeting Raspberry Pi Zero 2W, Pi 3, Pi 4, and QEMU.

Phase 2 — portable services + buildctl

The service format and build toolchain. Define what a service looks like, how it's built, signed, and distributed, with or without internet access.

Phase 3 — appctl + repository

On-device app management, the central package repository, and the foundations of multi-service orchestration across devices on the local network.

Phase 4 — services + data sync

The first batch of services: music, books, maps, and others. A data sync layer to keep collections consistent across nodes and pull updated datasets on a schedule.

Built by nerds, for nerds

Offline Lab is open source. If you're into embedded Linux, Raspberry Pi, or just think this is a problem worth solving, come build with us.

Use it

Run Offline Lab OS on a Raspberry Pi Zero 2W or test it in QEMU. Try it, break it, tell us what's wrong.

get started

Build with us

Contribute to the OS, the packaging spec, or the tooling. Or package a service you already run and share it with everyone else.

contributing guide