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.
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.
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
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
Note
Please use bun
to run the project. If you don't have bun
installed, 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
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
- Next.js for infrastructure
- Tailwind CSS for styling
- Shadcn for UI Components
- Axios for API calls
Feel free to contribute to this project, I'm open to any suggestions and improvements. Please read the CONTRIBUTING.md for more details.