
Always-on-top Tauri v2 + Rust desktop companion that watches your coding/typing/idle state and reacts with pixel-art animations
A tiny pixel-art companion that floats over your desktop and reacts in real time to what you're doing. Built with Rust + Tokio for the systems core and Tauri v2 for a lightweight overlay (90% less RAM than Electron). The activity monitor detects the focused window every 2 s via Windows UIA / DBus, classifying it as idle, active, typing, coding, or sleeping. Sessions are logged to SQLite (WAL) and queried by DuckDB for end-of-day habit analytics. Features 10 mini-games, multiple companion types, dialogue bubbles, petting, and a full system-tray menu.
Rust + Tauri always-on-top pixel-art desktop companion with activity tracking and mini-games.
• Systems core: Rust + Tokio; Tauri v2 native Webviews; Unix socket / named pipe IPC bridge between daemon and overlay.
• Activity detection: Windows UIA / DBus APIs poll the focused window every 2 s; states: idle, active, typing, coding (VS Code, JetBrains, Vim, coding sites), sleeping (idle ≥ 2 min).
• Persistence: SQLite WAL for high-frequency session writes; DuckDB for analytical queries powering the daily recap dashboard.
• Animation: Vello/ThorVG GPU-accelerated vector rendering; idle sub-animations cycle (wave, look around, stretch, excited); walking mode bounces across the screen.
• Social: multiple companions with buddy interactions (wave when within 200 px); rename, 5 colour themes, drag-to-reposition.
• Mini-games: Whack-a-Guy (right-click); Petting (left-click) with floating heart.
• Frontend: React + TypeScript (Overlay, Recap, Minigame windows); Vite bundler.