- Built custom vanilla JS Window Manager (window-manager.js)
- Replaced default.gbui with new desktop.html featuring Windows 95 spatial metaphor + Tailwind aesthetics
- Redesigned icons, taskbar, sidebar, and workspace to exactly match the target PDF layout
- Migrated Chat, Tasks, and Terminal into pure HTMX fragments to load seamlessly inside floating panels
- Added missing CSS rules to handle window rendering without CDNs
- Add bot_name field to WsQuery struct
- Extract bot_name from URL path (e.g., /edu, /chat/edu)
- Pass bot_name to backend WebSocket URL
- Use URL path for bot identification instead of relying on client message
Tauri-specific code has been moved to the botapp crate.
Changes:
- Removed tauri, tauri-plugin-*, trayicon, ksni dependencies
- Removed desktop feature flags
- Removed src/desktop/ module (moved to botapp)
- Removed tauri.conf.json (moved to botapp)
- Simplified build.rs (no tauri_build)
- Updated lib.rs and main.rs for pure web operation
Architecture:
- botui: Pure web UI (this crate) - no native deps
- botapp: Tauri wrapper that loads botui's suite
This separation allows:
- Same UI code for web, desktop, and mobile
- Clean dependency management
- App-specific features only in native app