Repository navigation
settings intake
github-actions[bot] edited this page Oct 12, 2026
·
2 revisions
-
Route:
/settings/*,/load,/load/journal -
Host Component:
apps/playground/app/pages/SettingsPage.tsx,JournalZipLoadPage.tsx,LoadZipPage.tsx -
Domain Models:
Configuration,Note,Notesource (rawContent + occurrence map; saved states inBlockRevision),Page,BlockIndexRow
-
StickyPageHeader(apps/playground/src/panels/page-shells/StickyPageHeader.tsx). Renders settings category tabs. -
Switch(apps/playground/src/components/atoms/primitives/switch.tsx). Toggles audio, debug mode, and preferences. -
BackdateConfirmModal(apps/playground/app/components/organisms/journal/BackdateConfirmModal.tsx). Modal confirming imports for past dates.
-
useJournalZipProcessor(apps/playground/app/hooks/useJournalZipProcessor.ts). Decompresses and imports archived journal entries. -
runSeedSync(apps/playground/src/services/seed/seedSync.ts). Syncs seed corpus files to IndexedDB. -
resetUserData(apps/playground/app/services/resetUserData.ts). Clears client-side database stores.
- Context Sidebar: Settings tree (Appearance, System, Queries, Library).
-
Settings Canvas:
- Appearance Section: Theme selector (Dark, Light, System), date locale picker, FAB alignment toggle (Right, Left), and default start page.
- System Section: Audio toggles, sound test, seed sync status, and database reset trigger.
- Queries Section: Route WQL default query editor.
-
Intake Flow (
/load/journal): Centered drop-zone card with live markdown preview and backdate confirmation dialog.
- Navbar: "Settings" title with drawer trigger.
- Stacked Settings: Grouped settings rows with native-style toggle switches and select menus.
- FAB Alignment Setting: Lets mobile users position the thumb dock FAB on the left or right side according to handedness.
-
Instant Preference Application:
- Toggling themes, audio, or FAB alignment applies immediately via CSS variables and React contexts without full reload.
-
Post-Import Navigation:
- Successfully importing a workout ZIP redirects directly to
/notes/:noteId, opening the imported entry in the universal editor.
- Successfully importing a workout ZIP redirects directly to