Local-first · off-grid · open source

Messaging that grows where you are.

LOAM is a messaging network with no internet, no accounts, and no cloud. One person hosts it on a laptop, a Raspberry Pi, or a phone. Everyone nearby scans a QR code and joins over local WiFi.

Runs offline. No account needed. AGPL-licensed.

How it works

Three steps to a network of your own

  1. 1

    Someone hosts

    Run LOAM on a laptop, a Raspberry Pi, or an Android phone. It starts a local WiFi hotspot and prints a join QR. No servers, no setup. You name the network and set the rules.

  2. 2

    People scan & join

    Nearby devices scan the QR to connect and open LOAM in the browser. Everyone gets a privacy-preserving, ephemeral identity: no email, no phone number. Approve newcomers if you want to vet who's in.

  3. 3

    You talk, locally

    Post to public or invite-only channels, reply in threads, DM, react, search, and share images, and optionally chat with a local AI assistant. Everything stays on the local network.

Node-to-node sync

When the crowd outgrows one hotspot.

One host covers everyone in WiFi range. But a field, a building, or a whole neighbourhood is bigger than a single hotspot, so LOAM nodes can join up. Two nodes that can reach each other sync their public channels, and separate hotspots converge into one conversation.

  • One host is a network: a laptop, Pi, or phone serves everyone nearby with no internet at all.
  • Many hosts are one network: link nodes and their public channels merge, so the conversation spans them all.
  • Link by QR: point one node at another with a scan; a node's join code is its sync address.
  • Resilient by design: DMs and private channels stay put; if a node drops the others carry on, then catch up when it returns.

What you get

Small, private, and resilient

Local-first

Messages live on the local network and in your browser's cache. No cloud round-trips, works with zero internet.

Ephemeral & privacy-preserving

A generated name and avatar, no account. Optional disappearing-message timers keep history minimal.

Channels, threads & DMs

Public and private, invite-only channels; threaded replies, direct messages, reactions, and markdown.

Search & images

Find any message in seconds, and share pictures that are resized on your device before they're ever sent.

Moderation & join approval

Greeter and moderator roles let the host approve who joins and ban or shadow-ban when someone won't play nice.

Security profiles

Choose open, standard, or hardened, and coherent defaults for joins, retention, and Emergency Reset flows.

Encryption & Emergency Reset

Encrypt the database at rest (on desktop or the Android host), then trigger an Emergency Reset to erase everything in one action, including remotely with a pre-shared token.

Any language, light or dark

Renders every script, including right-to-left, and follows your system's light or dark theme automatically.

Presence & a name of its own

See who's online, give the network a name you choose, and configure nearly everything else as the host.

Optional local AI

Point it at a laptop's Ollama, or run a small model on the Android host itself. An assistant appears as a contact and answers stay on the host, offline. Off by default.

Installable PWA

On a secure context (the Android host, or HTTPS), add it to your home screen and keep reading against the local cache even when the signal drops.

Phone as the host

The Android app turns a phone into the node: it runs the server, starts the hotspot, and shows the join QR.

Who it's for

For people, where the network isn't.

LOAM is built for moments the internet can't reach, and for keeping ordinary people connected when staying in touch is what matters most.

  • Communities off the grid: remote areas, boats, camps, anywhere without coverage.
  • Events & gatherings: a room, a venue, a field: a private space to coordinate.
  • When infrastructure fails: outages and disasters, where a hotspot is the only link.
  • Organisers & helpers: a simple, no-account way to reach the people around you.

These protections exist to keep everyday people safe and connected, not to hide wrongdoing.

Open source

Yours to run, read, and improve.

LOAM is free and open source under the AGPL. Read every line, run your own node, and help build the roadmap. Encrypted storage and node-to-node sync ship today; low-bandwidth LoRa relay that reaches beyond WiFi is next.

  • Fastify server · WebSocket + REST
  • Preact PWA client
  • SQLite storage, optionally encrypted at rest
  • Node-to-node public-channel sync
  • Deterministic, privacy-preserving identities
  • Dependency-free QR encoder
  • Expo / React Native Android host