← the estate

Offline photo library

Lumenyour photos, on your disk, on your terms

An offline library in the spirit of Picasa. Point it at the folders you already keep your photos in. It reads them, indexes them, and computes everything else — thumbnails, edits, faces, albums, duplicates — on your machine. There is no account, and there is no network call anywhere in the code.

tests: 98 passing licence: PolyForm NC 1.0.0 network: none build: Windows, Linux and Android
Lumen's LAN gallery: a grid of photos with star ratings, edited badges and a possible-duplicates strip
Lumen's LAN gallery — the page any phone or TV on your Wi-Fi opens to browse the library. The desktop and Android app is a native build; this is the one surface of it that runs in a browser, and the demo below is the real thing.

Try the gallery, right here

This is not a mock-up. It is Lumen's LAN gallery — the page your phone opens when it browses your library over your own Wi-Fi. Sample data, real client.

The LAN gallery: a grid of photos with a possible-duplicates strip below

What it does

01 · Index without copying

Your photos stay where they are. Lumen keeps its own index beside the app and never moves, renames or rewrites a file. Delete the index and your library is untouched.

02 · Edit without destroying

Crop, rotate, colour and tone curves are stored as a small recipe. The original is opened read-only, always. Export writes a new file beside it.

03 · Browse without a browser tab

Turn on the LAN gallery and any phone or TV on your Wi-Fi can browse the whole library. It works with the router's WAN port unplugged.

What it refuses to do

  • Upload a photo, or contact a server. test/offline_guard_test.dart fails the build if anyone adds an outbound network client.
  • Delete a photo. Duplicate detection groups and ranks; removing the extras stays a manual act.
  • Ship an Apple build. Compiling one needs a Mac, and this project will not carry that cost.

How to run it

You need the Flutter SDK, 3.27 or newer.

git clone https://github.com/drsamonline/lumen
cd lumen
flutter create --platforms=android,windows,linux .
flutter pub get
flutter run -d windows      # or: linux, or an Android device