Catalogs, a first version
LightPhotos now has catalogs: named lists of folders you switch between from the header. Your edits still live next to your photos. Here is what a catalog holds, what it leaves alone, and what it is for.
Why catalogs
Until now, LightPhotos had one Folders list. Add every shoot you care about and it gets long. I keep family photos and other people's photos on different drives, and I want to see one set at a time. Lightroom users expect this too: Lightroom Classic has had separate catalogs for years.
So the open catalog's name now sits in the header, after the LightPhotos wordmark. Click it for New Catalog…, Open Catalog… and your recent catalogs. Add Folder moved above the Folders list, so it stays in view however long the list grows. And once a catalog has folders, the home page stops asking you to open one; you pick a folder from the list.
What a catalog does not hold
In where your data lives, I wrote about my first central catalog. It recorded every photo by its full path, and it lost your ratings as soon as you moved a folder. I did not want to bring that back.
So a catalog does not hold your work. Every rating and edit is still
written first to the photo's own sidecar, in the
.lightphotos folder next to it. Move the folder, copy it
to a friend, or open it in the browser, and the work goes with it.
Delete a catalog and you lose a list of folders, not an hour of
culling.
What it does hold, and why
Besides the list of folders, a catalog keeps a copy of each rated, flagged or labelled photo's marks, one small JSON file per folder. That copy follows the sidecars. When the marks in the open folder change, LightPhotos rewrites that folder's file in the catalog with the folder's current marks. If the copy is stale, visiting the folder fixes it. If it is lost, nothing is lost; the next visit writes it again.
The copy is for the cost I named in that older post: a search across every folder is slow, because the app has to open each folder's sidecars. With the marks in one place, a later version can answer “every five-star photo from this year” without walking every drive. Search will read what the catalog stores, not the sidecars. Nothing reads the copy yet. I wanted it written, and correct, before search depends on it.
On disk and in the browser
On the desktop, a catalog is a folder named
<name>.lightphotos, by default in
~/Pictures/LightPhotos/. You can copy it, back it up, or
open one from anywhere with Open Catalog….
If the catalog you used last cannot be read at launch, the app opens
default with a message, and tries the last one again
next time.
The browser cannot keep a folder of its own on your disk, so the web app keeps catalogs in the site's storage, in the same JSON format. Its catalog menu lists every catalog made in that browser, and there is no Open Catalog. The browser also loads a catalog a moment after the page starts, so a folder you add or remove in that moment is merged in when it arrives, instead of being overwritten.
If you used LightPhotos before this release, your Folders list is now
the default catalog. Nothing to do.
What is missing
- No search or filter across folders yet. That is the next step, and it will run on what the catalog stores.
- No way to rename or delete a catalog from inside the app.
- The Grid still shows one folder at a time.
The help page on catalogs has the steps. If you want something from catalogs that is not here, open an issue.