Commit Graph

10 Commits

Author SHA1 Message Date
Michael Chihlas
45adba1643 feat: url normalization and http(s) allowlist
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-08 17:44:44 -04:00
Michael Chihlas
1e4bd8082b feat: add overlay state types and IPC constants
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-08 17:42:09 -04:00
Michael Chihlas
36dc73ac32 chore: remove scaffold App.css and react.svg
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-08 17:41:17 -04:00
Michael Chihlas
2f0814ad19 feat: wire tailwind v4 with charcoal design tokens 2026-05-08 17:40:14 -04:00
Michael Chihlas
d1e010bb65 chore: add frontend deps (zustand, lucide-react, tauri plugins, tailwind v4) 2026-05-08 17:38:02 -04:00
Michael Chihlas
ed89979a08 chore: tighten tsconfig and set dark page base 2026-05-08 17:32:34 -04:00
Michael Chihlas
6e62673f7e docs: address review of MVP plan
Patches:
- Wire tauri://destroyed listener through onDestroyed callback so
  taskbar-close keeps isOpen in sync (was: defined onOverlayClosed
  but never wired).
- Drop Rust-side opacity restore in apply_state; JS event handler
  reads useOverlayStore.getState().opacity and restores. Fixes
  hotkey-from-50%-opacity stuck at 100%.
- Replace event-based hotkey-registration signal with pull-style
  AppState.hotkey_status + get_hotkey_status command. Eliminates
  the listener-not-yet-registered race.
- Remove unused LogicalPosition/LogicalSize imports (would have
  failed tsc under noUnusedLocals).
- Remove unused urlError selector in OpenOverlayButton (same).
- Replace flushPendingPersist with flushPendingPersistSync that
  fires the write fire-and-forget; document the bounded staleness
  trade-off (<= 300ms loss on crash).
- Drop broken docs/screenshot.png reference from README.
- Collapse Task 18 down: syncClickThroughCache now lives in Task 9
  alongside lib/overlay.ts; Task 18 only touches the live-wiring
  hook to keep the cache in sync on UI-side toggles.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-08 17:25:32 -04:00
Michael Chihlas
4a3d380b54 docs: add Phase 1 MVP implementation plan
Twenty bite-sized tasks covering project hygiene, Tailwind v4 setup,
Zustand store + tested URL/debounce helpers, the WebviewWindow API
boundary, persistence, Rust plugin registration with click-through
toggle, capability files (overlay locked down), manual verification
checklist, and README + tag.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-08 16:14:24 -04:00
Michael Chihlas
605b5dc860 docs: add Phase 1 MVP design
Captures the brainstormed design for the two-window overlay app:
architecture, frontend structure, Rust backend split, persistence
model, click-through escape hatch, and the manual verification
checklist that defines "Phase 1 done."

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-08 16:05:31 -04:00
Michael Chihlas
a8255b90d5 Initial commit: scaffold Tauri app 2026-05-08 14:31:16 -04:00