upright
Rotate sideways and upside-down Immich photos so people are upright.
Open source · MIT · CLI for one Immich library
What it does
- Talks to Immich over HTTP with your URL and API key
- Finds bad orientation from EXIF (and a portrait-as-landscape hint)
- Dry-run by default; apply only after a local backup
How it works
- Dry-run — list what would rotate. Nothing is written to Immich.
- Backup — download originals to a local folder before any apply.
- Apply — ask Immich's editor API to rotate. Original server bytes stay put.
The CLI
export IMMICH_URL=https://photos.example.com
export IMMICH_API_KEY=immich_…
upright --album "Family" --limit 20
upright --album "Family" --apply --backup-dir ./backups
Dry-run is the default (omit --apply). Install once with pip install -e . — it does not auto-install deps when you run it. Override angle with --rotate 90.
Get it
MIT. Clone the repo, pip install -e ., point it at your Immich instance.