TopGit
GitHub Repo Review

Immich Self-Hosted Photo Management

immich-app/immich
ITopGit review image for immich-app/immich
Review by Topgit.dev for immich-app/immich, with GitHub repository stats and README context.
Quick verdict

Immich turns a spare server into a private Google Photos: facial recognition, CLIP-based search, a map view, and automatic mobile backup, all self-hosted. Reach for it if you already run Docker somewhere and want your family's photos off a company's servers for good. Skip it if you just want a folder of JPEGs synced — facial recognition and CLIP indexing burn real CPU you don't need for that.

Stars
★ 116.4k
Forks
⑂ 7.2k
Contributors
👥 967
Language
TypeScript
License
AGPL-3.0
Topic
Image Tools
Updated
Oct 2026
Homepage
GitHub

What Immich Offers for Media Management

Immich is a self-hosted photo and video management application built from a NestJS backend, a SvelteKit web client, and Flutter mobile apps. Together they back up, index, and serve your media from a server you control. It reproduces core Google Photos behavior — facial recognition, map view, CLIP-based search, multi-user sharing — without sending anything to a third party.

The Need for Private Photo Management

Cloud photo services index and search your library well, but they charge monthly and you can't audit what happens to the originals. The self-hosted alternatives that predate Immich were mostly folder browsers: no facial recognition, no natural-language search, no dedicated mobile client with background upload. Immich's own GitHub topics list it as a "google-photos-alternative" — it was built specifically to close that gap, as a full application rather than a viewer bolted onto a file share.

Core Capabilities of Immich

  • ✓Automatic mobile backup that fires when the app opens or runs in the background, with per-album selection so you're not syncing every screenshot on the phone
  • ✓Facial recognition clusters faces across the library so you can browse by person without manual tagging
  • ✓CLIP embeddings sit alongside standard EXIF data, so a query like "dog on a beach" returns results plain metadata search never would
  • ✓Multi-user accounts with partner sharing, shared albums, public share links, and admin-only user management
  • ✓RAW and LivePhoto/MotionPhoto support for both playback and backup, not just standard JPEG and MP4
  • ✓A global map view plots photos using their embedded geolocation data
  • ✓Tags, folder browsing, and a "memories" (x years ago) feature round out organization, alongside OAuth login and API keys for scripted access
How this repository's GitHub stars have grown over time. Source: star-history.com.View the star history ↗

Who Benefits from Immich?

  • •A family that wants Google Photos' facial recognition and timeline browsing without a monthly bill or a vendor holding the originals
  • •A household or small team that needs real multi-user accounts, partner sharing, and admin controls instead of one shared login
  • •Backing up several phones to a single NAS with automatic duplicate prevention instead of sorting copies by hand
  • •Building a read-only public gallery for a portfolio or event using Immich's public share links

Setting Up Immich on Your Server

There are no install steps in this repository. A callout in the README points readers to https://immich.app/ for "main documentation, including installation guides." What is documented here: server requirements are listed at docs.immich.app/install/requirements, and a live demo runs at demo.immich.app (login [email protected] / demo) so you can try the web UI before installing anything. The mobile apps connect to your own server by entering its address as the "Server Endpoint URL." Exact deployment commands aren't in this repo — not clearly documented here.

Strengths

  • ✓Immich matches core Google Photos behavior — facial recognition, map view, CLIP search, multi-user sharing — on a server you control instead of a vendor's cloud
  • ✓The public demo at demo.immich.app lets you try the web UI before installing anything locally
  • ✓RAW files and Live Photo/Motion Photo backup and playback work on both mobile and web, which is more than most lightweight self-hosted galleries bother supporting
  • ✓CLIP embeddings mean search understands photo content, not just EXIF fields or folder names
  • ✓The UI ships in 19 languages

Considerations Before Using Immich

  • △No install instructions live in this repository — you're routed to an external docs site, which is friction if you wanted to vet setup steps before leaving GitHub
  • △Tags and admin/user-management functions are web-only; the mobile app can't do either, so the two clients aren't at parity
  • △Facial recognition and CLIP search both run inference locally, so performance on a large library depends entirely on the hardware you point at it — there's no cloud offload
  • △The README's own 3-2-1 backup warning is a tell: Immich manages your library, it isn't a backup tool, so you still need a separate copy of your data elsewhere
  • △This is server software you now operate. Storage, uptime, and updates are on you, not a vendor's SLA

Other Photo Management Options

PhotoPrism — a Go backend with a Vue.js frontend, also self-hosted with facial recognition and a map view; the most common first comparison for ImmichLibrePhotos — Python/Django based, a similar feature set, generally seen as less actively maintained than ImmichNextcloud Photos — not a dedicated photo app, but a fit if you already self-host Nextcloud for file sync and don't want another separate servicePiGallery2 — SQLite-backed and deliberately lighter, trading facial recognition and CLIP search for simplicityGoogle Photos — the cloud service Immich is explicitly built to replace, per its own "google-photos-alternative" GitHub topic

Common Questions About Immich

Is Immich free to use?

Yes, Immich is free and open source under the AGPL-3.0 license, with no subscription or paid tier for self-hosting it.

What programming languages is Immich built with?

Immich's backend runs on NestJS, its web app on SvelteKit, and its mobile apps on Flutter — TypeScript and Dart across the stack.

Does Immich support multiple users?

Yes, Immich supports multiple accounts with partner sharing, shared albums, public share links, and admin-only user management.

Can Immich replace Google Photos?

Immich covers most of what Google Photos does day to day — backup, facial recognition, map view, search — but it's software you run and maintain yourself, not a managed service with an SLA.

How does Immich handle photo and video backups?

Immich backs up automatically from the mobile app when it opens or runs in the background, with per-album selection. Its own README warns it isn't a backup tool by itself — follow a 3-2-1 strategy for your originals.

What kind of media files does Immich support?

Immich handles standard photos and videos plus RAW formats, and it backs up and plays back Live Photos and Motion Photos on both mobile and web.

Who should try it — and who should skip

Reach for Immich if you already run a home server or NAS with Docker and want a private, full-featured replacement for Google Photos — facial recognition, sharing, and search included. It fits families and small teams who'd rather manage a server than a subscription. Skip it if you don't want to operate anything: no Docker, no NAS, no interest in being your own sysadmin for photo storage. If your library is small and you don't need facial recognition or CLIP search, a simpler file-based gallery is less to maintain.

Related repositories

Source & attribution

Source: GitHub repository immich-app/immich (https://github.com/immich-app/immich) — 109,695 stars, 6,433 forks, AGPL-3.0 license, TypeScript. Facts drawn from the repository README and its feature comparison table.

GitHub data · last synced Aug 5, 2026Reviewed by Henry
← Back to TopGit

Curious whether immich is right for you?

Let ChatGPT, Claude, or Perplexity look into it — click below and see what AI actually says about immich.

GitHub