# Phase 3: Backup Settings & Management UI **Status:** ⬜ Not Started **Parent plan:** [PLAN.md](./PLAN.md) **Domain:** frontend ## Objective Create a backup management page under settings with autobackup configuration, manual backup trigger, and backup list with download/delete/restore actions. ## Tasks - [ ] Task 1: Add API functions in api.ts - triggerBackup, listBackups, downloadBackup, deleteBackup, restoreBackup - [ ] Task 2: Add types in types.ts (BackupInfo interface) - [ ] Task 3: Add i18n keys for backup page (en.json, ru.json) - [ ] Task 4: Create backup settings page at `/settings/backup/+page.svelte` - Autobackup toggle + interval selector + retention count - "Backup Now" button with loading state - Backup list table: filename, date, size, type, actions - Download button (direct file download) - Delete button with confirmation - Restore button with strong warning dialog - [ ] Task 5: Add navigation link in settings layout - [ ] Task 6: Create IconBackup component (or reuse IconHardDrive/IconDatabase) ## Files to Modify/Create - `web/src/lib/api.ts` — add backup API functions - `web/src/lib/types.ts` — add BackupInfo type - `web/src/lib/i18n/en.json` — add backup i18n keys - `web/src/lib/i18n/ru.json` — add backup i18n keys - `web/src/routes/settings/backup/+page.svelte` — new page - `web/src/routes/settings/+layout.svelte` — add nav item ## Acceptance Criteria - Backup page accessible at /settings/backup - Autobackup settings save correctly - Manual backup triggers and shows result - Backup list shows all backups with correct metadata - Download streams file to browser - Delete removes backup with confirmation - Restore shows warning and triggers restore ## Handoff to Next Phase