Pictaria Server
The Server guide.
What each tab of the dashboard does and how to use it day to day — no terminal required. Written for the person who lives in the photo library, which doesn't have to be the person who installed the container. (For installation and configuration, see the technical docs.)
Opening the dashboard
Pictaria Server lives at an address on your home network —
usually http://your-server:4080. Whoever set it up
can tell you the exact address and the password; that one
password is all you need, on any device on your network. Sign in
once and the tabs along the top are the whole product:
Insights · Enrich · Curate · Albums · Frame · Remote ·
Activity, plus the gear for Settings.
frame/* tags that record your decisions, and (if
switched on) captions. All explicit, reviewable actions.The dashboard
Home
The first page after signing in: a status view that tells you the server is healthy and connected to your Immich library, with shortcuts into each section. If a frame or a module ever seems off, this is the quickest place to see whether everything is still talking to everything else.
Insights — understand your collection
Your library, finally legible. Insights is computed entirely on your server from a periodic sweep of the library, so it's instant to browse — and every number on the page is clickable: click it to see the actual photos behind it, open the same view in Immich, turn it into an album on the spot, or send that slice onward to Enrich or Curate.
Photos per year, and a week-by-week "where you were" ribbon with automatically detected trips. Filter the whole picture through a lens — one person, one place, one tag — and watch decades re-draw themselves.
A constellation of the people in your photos, linked by how often they appear together, plus leaderboards. Click a person for their card: their years, their places, the people they're photographed with — and keep clicking from card to card.
Cities and countries ranked by your photos, each with its own card. If the map data splits one spot into several names, Settings → Location Groups lets you merge them.
Which cameras and phones shot your library, your top tags, and the records: busiest day, longest quiet spell, home base, furthest photo from home.
Enrich — let AI describe your photos
Enrich has an AI look at photos and write down what it sees: a caption, tags from a set menu (editable in Settings, though leaving it alone is what keeps tags consistent), and quality scores. That's what makes the rest of the product smarter — searchable captions, honest "best of" albums, and better keeper suggestions in Curate.
Start a run whenever you like and give it a budget — say, a few hundred photos — then watch the progress strip. Runs can be stopped and resumed; history is kept. Photos that keep failing gather in a "Stuck photos" strip with a Retry button.
Under Settings → Enrich, turn on Daily Enrich and choose a local daily time and photo budget. Saving captures this browser's time zone. Each automatic run uses the provider last selected on Enrich, analyzes only photos that have never been successfully enriched, sends successful results to Curate, and appears in Recent Runs. A manual or queued run keeps priority. Daily Enrich runs only once per day; if today's time has already passed when you enable it, today's catch-up starts promptly. If an automatic run starts but fails, it waits until the next day rather than repeatedly retrying.
A review list shows what the AI wrote for each photo. Agree, fix, or send a photo onward to Curate for a human decision.
Connection details and model identifiers live under Settings → AI Providers. Choose the provider for new runs on Enrich; that choice is remembered across visits and server restarts. Local Ollama or LM Studio keeps photos on your hardware, or you can use your own OpenAI, OpenRouter, Ollama Cloud, or Venice key. Optionally, captions can be written back to Immich descriptions — off unless someone turns it on.
Recommended models
Last reviewed: August 19, 2026. These are the current starting points from Pictaria's reference installation, not a permanent compatibility promise. Availability, quality, price, capabilities, and privacy terms change quickly; recheck the provider before processing a private library.
qwen3-vl-235b-a22b
A cloud vision model with structured output. The current Venice catalog marks it Private; verify that status when you set it up.
qwen3-vl-235b-a22b
The same cloud model also accepts the multiple images a Stack comparison needs. The reference setup leaves Curate on Follow Enrich provider.
gpt-5.5
A cloud model with image input for spoken answers about the photo currently on screen.
gpt-5.4-nano
A small, fast cloud text model for general questions whose answers are spoken while someone waits.
gpt-4o-mini-tts
The speech model; voice, speed, and output format remain separate choices under Settings → Voice TTS.
Want a local route or another configured provider? The full
recommended-model guide also
lists exact LM Studio, Ollama, OpenRouter, and Ollama Cloud starting
identifiers. For cloud use, read the provider's current terms:
Venice documents its
per-model privacy modes and
model catalog; OpenAI documents
gpt-5.5,
gpt-5.4-nano, and
gpt-4o-mini-tts.
Pictaria connects directly with your key; see the
Pictaria privacy policy.
Curate — pick the keepers
Curate answers one question thousands of times, fast: of these near-identical shots, which one is the keeper? Your decisions here shape what the frames show.
Photos taken in the same moment — bursts, retakes, near-duplicates — collapse into a stack instead of cluttering the list. Open a stack to compare side by side.
Each stack comes with a suggested keeper: a silver ★ picked by photo-quality scores, or a gold ★ when the optional AI referee has compared the whole burst side by side (with a short note on why). One action keeps the best and skips the rest — or pick a different winner yourself.
Everything has a keystroke, so a rainy afternoon genuinely puts a dent in a 30,000-photo backlog. And it all works with AI switched off — the stars are suggestions, never decisions.
Your decisions are written to Immich itself, as tags:
approving adds frame/eligible, Favorite adds
frame/favorite, rejecting adds
frame/never-show, and skipped photos get
frame/reviewed. Favorites and "never show" from a
frame — tap or voice — write the same tags. Look under Tags in
Immich to see them.
Albums — albums that maintain themselves
The Albums tab builds real Immich albums from rules instead of hand-picking, and keeps them up to date on a schedule. "Alicia and David in San Francisco" stays current forever — every device that can see your Immich albums (including the frames) gets the result.
Compose filters: people, places (multiple cities work), dates, cameras, tags, or a free-text search. A preview with a result count shows exactly what you'll get before anything is created.
For free-text rules, "best of" double-checks every search hit against your own enrichment data and ranks keepers using your Curate decisions — a "Top 50" that is your best 50, not a search engine's first 50. Photos not yet enriched are reported honestly instead of guessed at.
Every album the server maintains, with its rule and schedule. Edit the rule, run it on demand, or stop managing an album at any time — removing a rule never deletes the Immich album.
Frame — what your frames have shown
The stats page for your photo frames: a ledger of what has actually been displayed, your most-shown photos, and which voice commands get used. It answers "has the new album actually been showing?" with data instead of a feeling. Counts only — voice transcripts are never stored.
Remote — control any frame from your phone
Open Remote on your phone and you're holding the remote control for every Pictaria Frame in the house: see what each one is showing right now, pause, skip forward or back, and push a different album to it. With more than one frame, a device picker makes sure commands reach only the frame you chose. Changes happen on the frame within moments.
Activity — understand what happened
A privacy-bounded history of server starts, backups, enrichment, curation, albums, Frame activity, and other operational events. Use its filters to narrow down a problem, then download JSON or CSV when support asks for a record of what happened. Review the file before sharing it and never add passwords, API keys, private server addresses, or photos to a support report; Activity deliberately does not record those values.
Settings — the gear, top right
Nearly everything is configured here, from the browser, while the server runs — changes apply immediately. The sections you're most likely to visit day to day:
How Pictaria reaches your Immich library — the URL and API
key (the key's exact permission checklist is in
Getting started) — plus
its browser-facing URL when that differs. Changes apply
immediately, no restart. The Immich connection supports HTTP and
HTTPS. Include https:// explicitly for TLS and use
the Immich root address without /api; an address
without a scheme defaults to HTTP. Public certificates work
normally. A private or home CA must be mounted into the container
and named with NODE_EXTRA_CA_CERTS, as shown in the
Configuration guide.
Certificate validation stays enabled.
Reusable provider connections, credentials, endpoints, and provider-default model identifiers, grouped into Local Models and Cloud Models. Choose the provider for new enrichment runs on Enrich, where the choice is remembered. The ElevenLabs key also lives here, but it is used only for text to speech; its model, voice, and output choices stay under Voice TTS.
Every frame that has ever connected, by name. Rename or remove retired devices; this is also where a re-onboarded frame's old entry gets cleaned up.
Merge nearby map labels into one place ("Brooklyn" and "Kings County" become one), and rename places the way your family actually says them.
Custom wake phrases can be uploaded here as openWakeWord models. Each frame installs its selected phrase from the server, and detection stays on the frame. Create your own phrase at openwakeword.com; details in the wake-words doc.
The feature-specific choices for spoken answers: provider, Interesting photo model, Ask text model, TTS provider, model, voice, and output. Connections and keys come from AI Providers; try-it-now testers here let you hear an answer before using it on a frame.
Schedules — including Daily Enrich's local time and photo budget — image size and run limits, taxonomy and prompts, grouping, and the optional AI referee. Enrich's active provider is chosen on the Enrich page itself; Curate can follow it or use its own provider and model override.
Scheduled backups of everything Pictaria knows (decisions, enrichment, albums' rules). Your photos are not in these — they never leave Immich.
Light or dark dashboard, and the place to paste a supporter key if you have one — which adds a badge and our gratitude, and changes nothing else.
Upgrading Pictaria Server
An upgrade keeps the data in your Pictaria volume and moves the server to a specific reviewed release. The person who maintains the installation will need the terminal for the version change, but the preparation and checks happen in the dashboard.
Read that release's notes, open Settings → Backups, select Back up now, and confirm the new snapshot is complete. Note both its name and the version shown under Settings → Server. Do not continue with a failed or incomplete backup.
Docker installations need the release-matched Compose file as
well as its image; pulling an image alone can leave an old
deployment definition behind. Source installations should switch
to the named version tag rather than pull the moving
main branch. The exact commands and customization
safeguards are in the
technical upgrade procedure.
When a release changes persisted state, an established install creates and verifies a specially retained pre-migration snapshot before any store opens. An older install adopting Pictaria's safety metadata for the first time establishes a baseline instead, which is why the fresh manual backup is required for every upgrade.
Confirm Settings → Server shows the new version, Home reports Immich connected, and a frame still displays photos and responds to one Remote or voice command. If a rollback is needed, stop the server first and follow the release notes and technical procedure: a migration requires restoring its complete pre-migration snapshot, while a release with no persisted-state change can be returned to the prior code without discarding new work.
A good rhythm
Pictaria doesn't need daily attention. A pattern that works well: