immich-app/immich

High performance self-hosted photo and video management solution.

View on GitHub ↗Jump to charts ↓Open shareable report →

Data as of . Signed-in members get hourly updates — create a free account.

Summary Information

Updated 1 hour ago
Added to GitGenius on June 2nd, 2024
Created on February 3rd, 2022
Open Issues & Pull Requests: 694 (+1)
GitHub issues: Enabled
Number of forks: 7,150
Total Stargazers: 115,778 (+8)
Total Subscribers: 359 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 1.4 hours
Mean response time: 30.5 days
90th percentile: 75.4 days
Tracked items: 6,372

How this project is maintained

About 15% of issues opened in the past year have never received a reply. 94% of open issues come from outside the core team, so the backlog reflects real-world use rather than internal planning. Work labelled "🧠machine-learning" is answered fastest, typically in about 2 hours, while "external-library" waits about 2 days. 26% of tracked open issues have had no activity in three months. 87% of issues opened in the past year have been closed, leaving a working backlog.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 470
New in 7 days: 49
Closed in 7 days: 58
Avg open age: 170 days
Stale 30+ days: 303
Stale 90+ days: 169

Recent activity

Opened in 7 days: 44
Closed in 7 days: 55
Comments in 7 days: 27
Events in 7 days: 68

Top labels

  • 📱mobile (890)
  • 🖥️web (379)
  • 🗄️server (347)
  • good first issue (197)
  • mobile-beta (108)
  • format (56)
  • needs-answer (51)
  • date-time (41)

Most active issues this week

Sign in to see which issues are moving.
Sign in

Detailed Description

Immich is a high-performance self-hosted photo and video management solution built primarily in TypeScript. It serves as a privacy-focused alternative to cloud-based photo services like Google Photos, allowing users to maintain complete control over their media libraries by running the application on their own infrastructure. The project is licensed under AGPLv3 and maintains an active community with a public Discord server.

The application provides both mobile and web interfaces for accessing and managing photos and videos. The mobile app, built with Flutter, supports automatic backup when opened and background backup functionality, while the web interface is constructed using SvelteKit and Svelte. Both platforms enable users to upload, view, download, and organize their media with features including multi-user support, shared albums, and public sharing capabilities. The system prevents duplicate asset uploads and supports raw image formats alongside standard photo and video types.

Advanced search and discovery features distinguish Immich from simpler gallery applications. Users can search by metadata including EXIF data, by detected objects, by faces through facial recognition and clustering, and using CLIP-based semantic search. The application displays metadata through an integrated map view and supports 360-degree image viewing on the web platform. Additional organizational features include the ability to create archives, mark favorites, view memories from previous years, stack similar photos, and organize content through folder views and tags.

The backend infrastructure runs on Node.js with NestJS, providing a robust server component that handles user management, API key generation, OAuth support, and administrative functions. Users can define custom storage structures for their media library, and the system supports partner sharing alongside standard album sharing. The mobile app includes offline support capabilities, allowing access to previously synced content without internet connectivity.

The README includes translations in over twenty languages, reflecting the application's international user base and commitment to accessibility.