Immich è una delle alternative self-hosted più apprezzate in assoluto a Google Foto, iCloud Foto e alle gallerie cloud proprietarie. Il progetto nasce con l’obiettivo di conservare foto e video su un server controllato direttamente, con backup da smartphone, ricerca, album, riconoscimento dei contenuti e accesso via web o app mobile. La nuova major release, appena pubblicata (download e installazione), non aggiunge soltanto funzioni visibili: interviene anche su database, API, gestione dei video, automazioni e affidabilità del backup in background.
In passato abbiamo già avuto modo di condividere una guida all’uso di Immich: nel tempo il progetto ha formato una comunità ampia, app mobili distribuite anche tramite store ufficiali e una base crescente di utenti che lo usano per gestire gallerie fotografiche molto estese, spesso composte da decine o centinaia di migliaia di file.
Editing non distruttivo su mobile: meno copie grazie ai metadati
La funzione più visibile per molti utenti è l’editing non distruttivo nell’app mobile. Immich aveva già introdotto l’editing web nella versione 2.5.0; il client mobile, però, seguiva un modello diverso e creava nuovi asset anziché modificare la foto in modo logico e reversibile. Con la versione 3.0.0 il comportamento diventa più coerente tra web e smartphone.
L’originale della foto resta sempre intatto, mentre tagli, rotazioni e regolazioni sono salvati come istruzioni o metadati applicativi. L’utente può tornare sui suoi passati, rifinire la modifica da web dopo averla avviata da mobile oppure ripristinare la versione iniziale. Per una libreria fotografica personale è una scelta sensata e davvero pratica che evita la moltiplicazione di duplicati quasi identici.

Workflows porta le automazioni dentro la libreria
L’introduzione di Workflows è forse la novità più interessante per gli utenti avanzati. Immich introduce un builder visuale per collegare trigger, filtri e azioni. Tradotto: quando accade un evento nella libreria, il sistema può valutare le condizioni e applicare automaticamente delle modifiche. Il tutto attraverso un editor drag-and-drop, con la possibilità di passare anche a una rappresentazione JSON.
L’editor visuale di Immich 3.0.0 aiuta a costruire automazioni senza scrivere codice; l’editor JSON permette invece di condividere configurazioni precise, copiarle tra istanze e discuterne senza perdere dettagli.
Un workflow ha un punto di ingresso, cioè il trigger, e una sequenza di step. Gli step possono agire come filtri, quindi condizioni, oppure come azioni. Il modello ricorda quello di molti strumenti di automazione domestica, ma applicato a foto, video, album e metadati.
Qui Immich apre una strada interessante: importazioni automatiche, ordinamento negli album, azioni su file appena caricati, regole legate a date, dispositivi o caratteristiche degli asset. L’applicazione mira palesemente a una trasformazione da archivio a piattaforma per la gestione attiva della libreria.

Backup in background: Android e iOS affrontano limiti diversi
Il backup automatico da smartphone è una delle ragioni principali per cui molti installano Immich.
Con la versione 3.0.0, il backup in background su Android usa un nuovo scheduler. Prima il comportamento risultava più limitato, soprattutto per le foto appena scattate; ora l’app può caricare in background l’intera libreria, rispettando meglio i vincoli di esecuzione imposti dal sistema operativo.
Android, soprattutto nelle versioni recenti e nelle personalizzazioni dei produttori, limita le attività in background per risparmiare batteria. Immich prova quindi a gestire meglio i task periodici, a pulire correttamente i lavori in coda, quindi ancora da smaltire, e ad avvisare l’utente quando ottimizzazione batteria o impostazioni delle notifiche possono interferire con il corretto funzionamento del backup.
Su iOS c’è un problema di fondo: Apple concede finestre brevi per le attività di background; se l’app spreca tempo nella sincronizzazione prima di iniziare l’upload, il caricamento rischia di non partire affatto. Immich 3.0.0 fa procedere sincronizzazione e upload in parallelo, così i trasferimenti possono iniziare entro il margine temporale disponibile.
Gestione dei nuovi elementi e controlli di integrità
La nuova pagina Aggiunti di recente consente di navigare la libreria in base al momento in cui foto e video sono entrati nell’archivio di Immich, non in base alla data di scatto.
Sembra una sfumatura, ma chi importa vecchi archivi sa quanto questo schema possa fare la differenza. Una cartella di foto del 2014 aggiunta oggi finirebbe nella timeline storica; con Aggiunti di recente si può invece controllare subito cosa è stato appena importato.
Ancora più importante, sul piano operativo, è la comparsa dei report di integrità nella pagina di manutenzione: Immich può scansionare le directory sul file system e confrontarle con quanto registrato nel database. Le anomalie principali sono tre: file non tracciati presenti nelle directory ma sconosciuti a Immich, file mancanti che il database cita ancora ma che non esistono più nel percorso previsto e mancata corrispondenza lato checksum.
Il checksum rappresenta una sorta di impronta del file: se cambia senza che Immich se lo aspetti, può esserci un qualche danneggiamento nei dati, una rideniminazione dei file sbagliata, una copia difettosa o una manipolazione eseguita fuori dall’applicazione.

Video: HLS, transcodifica in tempo reale e nuovo player Web
Immich 3.0.0 introduce in anteprima la transcodifica video in tempo reale basata su HLS. Invece di generare sempre transcodifiche offline, il server può convertire il video al volo quando il client lo richiede. I potenziali vantaggi sono evidenti: cambio qualità manuale o automatico, scelta del codec più adatto al dispositivo, minore occupazione di spazio se si disabilitano le transcodifiche offline.
La funzione resta sperimentale e, al momento del rilascio, riguarda l’applicazione web; il supporto mobile risulta ancora in lavorazione.
È importante sottolineare che la transcodifica in tempo reale può migliorare molto l’esperienza, ma richiede CPU o accelerazione hardware adeguata. Su un mini PC recente con Intel Quick Sync, una GPU supportata o un server ben dimensionato, la funzione si rivelerà molto utile. Su un NAS entry-level, invece, il rischio è saturare le risorse e ottenere buffering, ventole al massimo e un’interfaccia meno reattiva. L’accelerazione hardware non è obbligatoria, ma consigliata.
Il nuovo video player web completa il lavoro: Immich abbandona una parte della dipendenza dai controlli nativi dei sistemi operativi e introduce un player con controlli più uniformi e coerenti con l’interfaccia del progetto. Anche funzioni semplici, come la modifica della velocità di riproduzione, diventano più prevedibili.

Android diventa anche visualizzatore, sull’app mobile arrivano OCR e condivisione più flessibile
Su Android, Immich può ora comportarsi come app galleria o visualizzatore immagini. Da un’altra applicazione si può aprire una foto o un video con Immich e visualizzarlo direttamente nell’asset viewer, con opzioni per condividerlo o caricarlo nella libreria. L’app non vuole essere solo il client di backup, vuole entrare nei flussi quotidiani del telefono.
Le abilità OCR, inoltre, arrivano anche nell’app mobile: il visualizzatore degli asset include un controllo per evidenziare il testo riconosciuto in una foto, selezionarlo e copiarlo.
La funzione estende al telefono un caso d’uso molto concreto: ricevute, schermate, documenti fotografati, cartelli, appunti. Se la libreria contiene molti scatti contenenti testi e informazioni utili, poter estrarre i testi senza uscire dall’app riduce parecchi passaggi.
Due aggiunte più piccole migliorano l’organizzazione e la condivisione. Da mobile si possono caricare foto locali direttamente in un album, anche dal pannello inferiore dell’asset, evitando la sequenza upload prima e riordino dopo. Inoltre, durante la condivisione, l’app permette di scegliere la dimensione dell’immagine: utile per inviare file più leggeri su chat e social, senza rinunciare alla qualità piena laddove serve.
Immich migliora anche le prestazioni della timeline
La nuova major version di Immich migliora anche le prestazioni della timeline per quei periodi che contengono un vasto numero di foto e video.
Chi importa librerie storiche o backup da più dispositivi può ritrovarsi con migliaia di foto concentrate nello stesso mese. In questi casi, un browser può bloccarsi non per colpa del server, ma per la quantità di elementi che l’interfaccia deve renderizzare, indicizzare e gestire simultaneamente.
Il team parla di navigazione molto più fluida e di riduzione dei blocchi della scheda del browser. Dal punto di vista tecnico, entrano in gioco ottimizzazioni lato frontend: rendering più efficiente, gestione migliore degli elementi visibili, minore pressione su memoria e thread principale.
Immich 3.0.0: come gestire l’aggiornamento
Il team di sviluppo di Immich chiarisce che molte modifiche toccano inoltre API e integrazioni di terze parti: intorno al progetto, infatti, si sono formati script di importazione, tool di migrazione, client non ufficiali e automazioni domestiche.
Per chi usa Docker Compose, il passaggio indicato consiste nell’aggiornare la variabile IMMICH_VERSION nel file .envportandola a v3, poi eseguire il pull delle immagini e ricreare i container con docker compose pull && docker compose up -d.
Prima dell’aggiornamento a Immich 3.0.0 conviene comunque effettuare un backup completo del database PostgreSQL e della libreria, oltre a una copia del file .env e del compose usato in produzione.
Un dettaglio tecnico importante riguarda le variabili d’ambiente. La documentazione di Immich ricorda che modificarle non equivale a riavviare un processo interno: i container devono essere ricreati, perché l’ambiente viene letto alla creazione del container. In caso contrario, si rischia di credere di aver applicato una modifica mentre l’istanza continua a usare valori precedenti.
Addio pgvecto.rs: i motivi della migrazione a VectorChord
Immich 3.0.0 rimuove il supporto a pgvecto.rs, un cambiamento che riguarda soprattutto le istanze utilizzate da tempo.
Chi, per esempio, esegue ancora una versione precedente alla 1.133.0 e non ha completato la migrazione deve farlo prima di aggiornare alla nuova major release. Il motivo è legato alla ricerca vettoriale: Immich usa rappresentazioni numeriche delle immagini per funzioni come ricerca semantica, riconoscimento, similarità tra asset e operazioni collegate ai modelli di machine learning.
Per diverso tempo pgvecto.rs ha fornito questo livello dentro PostgreSQL; ora il progetto passa a VectorChord, estensione pensata per gestire vettori in modo più efficiente e con migliori prospettive di manutenzione.
La differenza non riguarda l’utente che sfoglia una galleria, ma l’architettura “sotto il cofano”. Quando Immich indicizza una libreria, non si limita a salvare nome file, data e percorso: associa agli asset anche dati derivati dall’analisi delle immagini. Questi dati permettono di cercare contenuti simili o descrivibili in maniera puntuale, ma richiedono un motore capace di confrontare i vettori in modo rapido.
Immich 3.0.0 conferma una maturazione netta del progetto. Non tutto è definitivo e alcune funzioni chiave arrivano ancora in anteprima ma la strada imboccata è evidente: vi è una minore dipendenza da soluzioni provvisorie, più attenzione all’affidabilità della libreria, migliore parità tra web e mobile, una base tecnica più solida per video e automazioni.