## 🚀 **Immich Power Tools** 0.4.0 ### Bug Fixes * added authentication error message block ([eb1b00e](https://github.com/varun-raj/immich-power-tools/commit/eb1b00e40f98ddf345cd96f0a28e474d60ab2711)) * authentication fixes in proxies ([1465486](https://github.com/varun-raj/immich-power-tools/commit/1465486de48f3b278819e0d4f956d85125168664)) * login and logout updates ([30526e8](https://github.com/varun-raj/immich-power-tools/commit/30526e8e46bb07f1186122752666a6916fcf0327)) * login page cleanup ([cb594bf](https://github.com/varun-raj/immich-power-tools/commit/cb594bf8e8cfc3e7649ac958b126b1f465df8b84)) * minor auth fix ([7078768](https://github.com/varun-raj/immich-power-tools/commit/707876825ea1bc123b9a530c45d05b9ba44bc876)) * minor design fix ([0da9504](https://github.com/varun-raj/immich-power-tools/commit/0da950416142e61f144bc32b5b9cd66ddd4c0113)) * proxy default header fix ([2d2781b](https://github.com/varun-raj/immich-power-tools/commit/2d2781bbdcb7eb5ca78e1c202a0036ad16778dac)) * removed unused packages ([62fc820](https://github.com/varun-raj/immich-power-tools/commit/62fc820bc7f982568026963755891f2b9a610fb0)) ### Features * added api key notice in login ([0f05914](https://github.com/varun-raj/immich-power-tools/commit/0f0591484f7c30c5d51fd5283e81d0412915422a)) * added logout and redirection to login after logout ([6c625f1](https://github.com/varun-raj/immich-power-tools/commit/6c625f12734b99ccde5998b703d981e96d8c3796)) * added more info to error messages ([1013231](https://github.com/varun-raj/immich-power-tools/commit/1013231f001401f8e1728b145ae1040a73920add)) * setup auth flow to work in parallel with api key ([5e71e1e](https://github.com/varun-raj/immich-power-tools/commit/5e71e1eeeb40245aea4c13d1759a96078c6a746e))
Immich Power Tools
A unofficial immich client to provide better tools to organize and manage your immich account. Building it to speed up your workflows in Immich to organize your people and albums.
💭 Back story
Recently I've migrated my entire Google photos library to Immich, I was able to successfully migrate all my assets along with its albums to immich. But there were few things like people match that was lacking. I loved Immich UI on the whole but for organizing content I felt its quite restricted and I had to do a lot of things in bulk instead of opening each asset and doing it. Hence I built this tool (continuing to itereate) to make my life and any other Immich user's life easier.
🚀 Getting Started
🐬 Using Docker
Power-tools is designed to be used alongside Immich, and there are two ways you can run it.
Method 1 - Docker Compose ( Recommended )
Add the following into your docker compose as a new service along side other immich services. Make sure you've power-tools in same network as immich.
See the sample docker-compose-all-immich.yml file for reference.
services:
# Other services...
power-tools:
container_name: immich_power_tools
image: ghcr.io/varun-raj/immich-power-tools:latest
ports:
- "8001:3000"
env_file:
- .env
Add the Immich API Key and immich url's to the env file (which you already have for the immich)
IMMICH_API_KEY= # your_immich_api_key
IMMICH_URL = "http://local-ip-of-immich:port" # Your immich instace ip address and port
EXTERNAL_IMMICH_URL = "https://external-address" # External address of immich
Refer here for obtaining Immich API Key: https://immich.app/docs/features/command-line-interface#obtain-the-api-key
Method 2 - Portainer
If you're using portainer, run the docker using docker run and add the power tools to the same network as immich.
docker run -d --name immich_power_tools -p 8001:3000 --env-file .env ghcr.io/varun-raj/immich-power-tools:latest
🚀 For local development
Note
Please use
bunto run the project. If you don't havebuninstalled, checkout bun.sh for installation.
Copy paste the .env.example to .env and fill in the values.
IMMICH_URL="" # Immich URL
IMMICH_API_KEY="" # Immich API Key
DB_USERNAME="" # Postgress Database Username
DB_PASSWORD = "" # Postgres Database Password
DB_HOST = "" # Postgres Host (IP address or hostname of the database)
DB_PORT = "" # Postgres Port number (Default: 5432)
DB_DATABASE_NAME = "" # Name of the database
Note
Make sure you have postgres port exposed on you machine.
Refer here for obtaining Immich API Key: https://immich.app/docs/features/command-line-interface#obtain-the-api-key
Run the development server:
bun run dev
Features
Immich Related
- Manage People
- Smart Merge
- Manage Albums
- Bulk Delete
- Bulk Edit
- Filters
- Potential Albums
- Statistics
- EXIF Data
- Assets Overtime Chart
Tech Related
- Dark Mode
- Dockerize
- Authentication
- Push to github packages
Tech Stack
- Next.js for infrastructure
- Tailwind CSS for styling
- Shadcn for UI Components
- Axios for API calls
Contributing
Feel free to contribute to this project, I'm open to any suggestions and improvements. Please read the CONTRIBUTING.md for more details.
