Summary
apps/tauri/src/main.ts still owns too much wiring: event binding, async actions, polling, drag-and-drop, and page-specific orchestration.
Why this matters
The file is workable, but it raises the entry cost for contributors and makes small behavior changes harder to reason about.
Expected outcome
Split the file into smaller modules by concern, for example:
- Spotify actions/polling
- Fire TV actions
- Bindings/hotkeys
- Layout/sidebar/render helpers
Constraints
- Preserve current behavior
- Prefer small, readable modules over introducing a large abstraction layer
- Keep the app biased toward explicit control flow
Likely files
apps/tauri/src/main.ts
apps/tauri/src/features/*
apps/tauri/src/pages/*
- new controller/helper modules under
apps/tauri/src
Summary
apps/tauri/src/main.tsstill owns too much wiring: event binding, async actions, polling, drag-and-drop, and page-specific orchestration.Why this matters
The file is workable, but it raises the entry cost for contributors and makes small behavior changes harder to reason about.
Expected outcome
Split the file into smaller modules by concern, for example:
Constraints
Likely files
apps/tauri/src/main.tsapps/tauri/src/features/*apps/tauri/src/pages/*apps/tauri/src