xeve started on macOS. The tracker is a native Swift menu bar app that detects your active application, extracts window titles, and syncs to Supabase. It works well because it uses native APIs — no Electron, no web views, no 200MB RAM overhead.
Windows users kept asking when they could use xeve. The answer is now: xeve for Windows is live. And we built it the same way — native, lightweight, and fast.
Why Native, Not Electron
We considered Electron for about five minutes. Cross-platform sounds appealing until you realize the tracker runs all day in the background. An Electron app sitting in your system tray consuming 150-200MB of RAM is not acceptable for a tool that should be invisible.
The Windows app is built with WinUI 3 + C# + .NET 8. It runs as a system tray application with an optional window for settings and data review. Memory usage sits around 30-40MB. It starts with Windows, tracks silently, and stays out of your way.
How Tracking Works
The core of the tracker uses Win32 APIs to detect the foreground window. Every few seconds, it checks which application has focus, grabs the window title, and determines the app category. When you switch apps, it creates a session boundary and uploads the previous session to Supabase.
Window title extraction follows the same logic as the Mac app: for VS Code it extracts the project name, for browsers it captures the page title, for terminal apps it detects the working directory when possible. This means your coding time, browsing habits, and app usage all track accurately without any manual input.
The Design System on Windows
We ported the xeve design system to WinUI 3 using XAML resource dictionaries. The same dark background (#0f0e12), Space Mono font, orange accents (#ff4f00), and sharp-cornered cards. The settings window looks like a native xeve experience, not a generic Windows dialog.
This was the hardest part of the port. WinUI 3 has its own design language (WinUI uses rounded corners by default, Segoe UI font, etc.), and overriding every default to match xeve required custom styles for every control type — buttons, text boxes, toggles, cards, all of them.
Auth and Session Persistence
The Windows app uses Google OAuth with PKCE flow — the same secure auth pattern as the Mac app. Sessions persist via Windows Credential Manager, which is the Windows equivalent of macOS Keychain. Your login survives reboots, and credentials are encrypted at the OS level.
Auto-Updates
The app checks for updates on startup and periodically while running. Updates are distributed via GitHub Releases — the app downloads the latest installer and prompts you to update. We use Inno Setup for the installer, which bundles all .NET 8 prerequisites so users never need to install the runtime manually.
Media Detection
One bonus feature on Windows: Now Playing detection via SMTC (System Media Transport Controls). The Windows app can detect what music or media is currently playing through any SMTC-compatible app — Spotify, Windows Media Player, browser media, and more. This feeds into xeve's music tracking without needing a separate Spotify OAuth integration.
Download
The Windows app is available now at xeve.io/download. It is a single installer — download, run, sign in, and tracking starts automatically. Same free early access as all xeve apps.