immich/web
Charlie Savage 2e1fd4555b feat(server): export faces to xmp sidecars
Adds an opt-in `metadata.faces.export` setting. When enabled, the people
Immich knows about are written to an asset's XMP sidecar as
`mwg-rs:RegionInfo` whenever its faces change, so external libraries stay
in sync with naming, merging, reassigning and deleting people.

Turning the setting on writes out every asset that already has a named
person, so it does not appear to do nothing until faces happen to change.

Only faces that resolve to a named person are written, and regions are
removed from a sidecar only when it already has them, so a sidecar is
never created just to hold an empty list.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-10 22:08:37 -07:00
..
bin chore: build sdk while server is starting (#22083) 2025-09-16 12:48:31 -04:00
src feat(server): export faces to xmp sidecars 2026-08-10 22:08:37 -07:00
static chore: add GHSA as contact in security.txt (#29940) 2026-07-16 12:30:44 +02:00
tests chore(web): sort imports (#27922) 2026-04-21 14:51:38 -04:00
.browserslistrc chore: bump browserlists version and load tscompat browserlist from file (#19212) 2025-06-16 10:03:46 -05:00
.dockerignore feat(web)!: SPA (#5069) 2023-11-17 22:13:36 -06:00
.gitignore
.npmrc
.prettierignore chore(web): fix weblate conflicts (#10071) 2024-06-10 13:59:54 +01:00
.prettierrc chore(web): sort imports (#27922) 2026-04-21 14:51:38 -04:00
eslint.config.js chore(deps): update dependency eslint-plugin-unicorn to v72 (#30092) 2026-07-21 15:33:46 +02:00
mise.toml chore: sequence pnpm installs in mise tasks (#30412) 2026-07-30 15:12:42 -04:00
package.json chore(deps): update dependency @testing-library/jest-dom to v7 (#30308) 2026-08-03 11:53:40 +02:00
README.md fix(web): Updated web README.md (#12899) 2024-09-25 12:59:35 +00:00
svelte.config.js fix(web): use deterministic version name in svelte config (#29172) 2026-06-17 16:42:26 +00:00
tsconfig.json chore(deps): update dependency typescript to v6 (#27577) 2026-04-07 17:15:55 +02:00
vite.config.ts chore(web): sort imports (#27922) 2026-04-21 14:51:38 -04:00

Immich web project

This project uses the SvelteKit web framework. Please refer to the SvelteKit docs for information on getting started as a contributor to this project. In particular, it will help you navigate the project's code if you understand the basics of SvelteKit routing.

When developing locally, you will run a SvelteKit Node.js server. When this project is deployed to production, it is built as a SPA and deployed as part of the server project.