# user (frontend)

UI for account management: profile editing, password change, and permission group management in the admin panel.

## What this domain owns

Components: `UserProfileSection.svelte`, `UserPasswordSection.svelte`, `UserGroupsSection.svelte`.

## What this domain does NOT own

- `Person` records — historical family members are entirely separate from login accounts. A user editing their profile is an `AppUser`; the historical persons in documents are `Person` entities. They are never linked.
- User list or admin creation UI — those live in the `/admin` route, which assembles views from multiple domains.

## Key components

| Component                    | Used in                     | Notes                                |
| ---------------------------- | --------------------------- | ------------------------------------ |
| `UserProfileSection.svelte`  | `/settings` or profile page | Display name, email editing          |
| `UserPasswordSection.svelte` | `/settings`                 | Password change form                 |
| `UserGroupsSection.svelte`   | `/admin`                    | Per-user permission group assignment |

## Cross-domain imports

- `shared/primitives/` — generic UI primitives only

## Backend counterpart

`backend/src/main/java/org/raddatz/familienarchiv/user/README.md`
