Skip to content

immich-power-tools

Media Servers

An unofficial client with bulk management tools to organize and enhance workflows in Immich (people, albums, locations, analytics, etc.)

TypeScript Latest v0.22.0 · 24d ago Security brief →

Features

  • Bulk manage people data with advanced filters and merge suggestions
  • Detect and update missing location metadata for assets
  • Generate analytics (EXIF, asset trends over time) for your library
  • Smart natural‑language search across photos and videos

Recent releases

View all 9 releases →
v0.22.0 Breaking risk
⚠ Upgrade required
  • Upgrade Immich server to v3.0 before updating the power tools.
  • Run any required V3 database migration scripts after upgrading the Immich server.
Breaking changes
  • Only supports Immich V3; v2.x compatibility dropped – requires upgrading Immich server to v3.0 before updating.
  • Album ownership moved from `album` table to `album_user` rows with owner lookups via the `owner` role.
  • Asset `duration` changed to integer milliseconds; removed columns `deviceId` and `deviceAssetId`.
Full changelog

⚠️ Breaking Change: Immich V3 support

v0.22.0 and above only support Immich V3. Upgrade your Immich server to v3.0 before updating.

Immich V3 migration

The whole app has been migrated to Immich's V3 API and DB schema. This is a clean cutover — v2.x compatibility has been dropped.

Highlights of what changed under the hood:

  • Albums — album ownership moved from the album table to album_user rows; owner lookups now resolve via the owner role. Affects album list, merge, info, and people views.
  • Assetsduration is now an integer (milliseconds); the removed deviceId / deviceAssetId columns are no longer read anywhere.
  • Import dedup — the removed /api/assets/exist endpoint is replaced with checksum-based /api/assets/bulk-upload-check. Shared-link imports now dedup by checksum before download.
  • Album enumeration — shared album assets are now enumerated via the V3 timeline-bucket endpoints (AlbumResponseDto no longer embeds assets).
  • Uploads — the asset upload form drops the removed fields; archived assets now use visibility: "archive" instead of isArchived.

Fixes

Asset grid selection visual
Non-selected assets are now dimmed while you're in selection mode, making the current selection much easier to see.

Robust null/NaN handling for V3 data
Album thumbnails with no cover now render a clean placeholder instead of a broken image, and byte/duration formatting no longer shows NaN for empty albums.

Video duration overlays
Duration overlays are fixed for V3's millisecond-integer duration format (legacy HH:MM:SS strings still parse).


What's Changed

  • fix(AssetGrid): dim non-selected siblings during selection mode by @dgilperez in https://github.com/immich-power-tools/immich-power-tools/pull/269
  • Prerelease by @sai80082 in https://github.com/immich-power-tools/immich-power-tools/pull/293

Full Changelog: https://github.com/immich-power-tools/immich-power-tools/compare/v0.21.4...v0.22.0

No immediate action
v0.21.4 New feature

Year selector on heatmap

v0.21.3 New feature
Notable features
  • Enhanced API key validation with detailed permission checks
Full changelog

What's Changed

  • feat: enhance API key validation with detailed permission checks and … by @sai80082 in https://github.com/immich-power-tools/immich-power-tools/pull/256
  • fix(find): use getUserHeaders() for Immich smart search auth by @dgilperez in https://github.com/immich-power-tools/immich-power-tools/pull/263
  • fix(find): drop hallucinated future-date filters from AI output by @dgilperez in https://github.com/immich-power-tools/immich-power-tools/pull/264
  • Prerelease by @sai80082 in https://github.com/immich-power-tools/immich-power-tools/pull/281

New Contributors

  • @dgilperez made their first contribution in https://github.com/immich-power-tools/immich-power-tools/pull/263

Full Changelog: https://github.com/immich-power-tools/immich-power-tools/compare/v0.21.2...v0.21.3

v0.21.2 Bug fix
Notable features
  • Volume configuration for immich power tools in docker-compose
Full changelog

What's Changed

  • Updates power-tools image path referenced by @jicetus in https://github.com/immich-power-tools/immich-power-tools/pull/253
  • feat: add volume configuration for immich power tools in docker-compo… by @sai80082 in https://github.com/immich-power-tools/immich-power-tools/pull/261
  • fix: restore gallery grid selection UI by @varun-raj in https://github.com/immich-power-tools/immich-power-tools/pull/273

New Contributors

  • @jicetus made their first contribution in https://github.com/immich-power-tools/immich-power-tools/pull/253

Full Changelog: https://github.com/immich-power-tools/immich-power-tools/compare/v0.21.1...v0.21.2

What's Changed

  • Updates power-tools image path referenced by @jicetus in https://github.com/immich-power-tools/immich-power-tools/pull/253
  • feat: add volume configuration for immich power tools in docker-compo… by @sai80082 in https://github.com/immich-power-tools/immich-power-tools/pull/261
  • fix: restore gallery grid selection UI by @varun-raj in https://github.com/immich-power-tools/immich-power-tools/pull/273

New Contributors

  • @jicetus made their first contribution in https://github.com/immich-power-tools/immich-power-tools/pull/253

Full Changelog: https://github.com/immich-power-tools/immich-power-tools/compare/v0.21.1...v0.21.2

Weekly OSS security release digest.

The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.

No spam, unsubscribe anytime.

About

Stars
2,602
Forks
52
Languages
TypeScript SCSS Dockerfile

Install & Platforms

Install via
docker docker-compose

Beta — feedback welcome: [email protected]