Ask HN: What's the 2025 stack for a self-hosted photo library with local AI?
Leading self‑hosted photo stacks
- Immich is the most frequently recommended: polished web UI, strong AI features (face/object search, duplicates), active community, good for large libraries (~100k+ photos). Mobile apps are slower and backend has room for optimization, but stability has improved and breaking updates are now rarer.
- Ente is highlighted for E2E encryption, local AI, fully open-source server, and good cross‑platform clients. Works well self‑hosted or as a paid cloud; some users miss features like Ultra HDR rendering.
- PhotoPrism is seen as stable and mature, with decent AI and SQLite support, but a dated/less-liked UI, slower development, and weaker AI vs Immich.
- Nextcloud + Memories + Recognize is used as a more general “personal cloud” with photo AI; scales to many tens/hundreds of thousands of files but requires more setup.
- Other options mentioned: DigiKam (desktop, aging UI), Synology Photos, MyPhotoShare, home-gallery, LibrePhotos, Photonix.
Encryption, hosting model, and trust
- Debate over E2E encryption for self-hosted photos:
- Pro: protects data on rented VPSes, against rogue admins, compromises, or legal demands; keeps server blind by design.
- Con: complicates server-side AI (re‑processing with new models), key/account recovery, and family use; seen as overkill when admin and users are the same people.
- Some prefer simple at‑rest and in‑transit encryption plus good backups instead of E2E.
Databases and storage
- SQLite vs Postgres:
- Some argue Postgres is “set and forget” and better for scaling.
- Others argue SQLite is easier to maintain, scales fine for typical home photo use, and can be faster; “SQLite doesn’t scale” is called a misconception.
- S3‑compatible storage:
- Advocates like flexibility (cloud, Garage, B2, MinIO) and tooling.
- Critics see S3 as unnecessary complexity for purely local, self‑hosted setups and prefer block/NAS plus separate backup via tools like rclone.
AI features and models
- Desired capabilities: face recognition, semantic search (“us in Banff last winter”), deduplication and “best shot” selection, cross‑provider import/merge, and timeline/map views.
- Common building blocks: CLIP for embeddings, BLIP/SmolVLM for captioning, SentenceTransformers, DeepFace/InsightFace/mtcnn for faces, Qwen, Gemma, Mistral via Ollama.
- Background removal suggestions: rembg, Stable Diffusion add‑ons, Flux Kontext, Florence2, SAM.
UX, performance, and maintenance
- Immich praised for ease of updates (Docker, notifications) and low ongoing maintenance, but some report past breaking changes and mobile slowness.
- PhotoPrism’s AI is viewed as weaker and slower (face clustering issues), with limited openness to contributions.
- Many emphasize manual, non‑automatic updates and filesystem snapshots (e.g., ZFS) to mitigate breaking releases.