Device History

WTF just disconnected? Real-time USB device monitor for Windows with a neon-themed GUI, event logging, and CLI mode.

v0.8.0 — Tauri v2 + Svelte 5 rewrite

Complete Tauri v2 + Svelte 5 rewrite. Glassmorphism UI, 5 themes, full emoji support.

Device History v0.8.0 - Glassmorphism USB monitor with 5 themes
500msPoll Rate
5Themes
2.4MBInstaller
v0.8.0Version

Features

Everything you need to track what's happening on your USB bus.

Live Monitoring

Background thread polls WMI every 500ms. Instant detection when devices connect or disconnect.

Event Cards

Color-coded cards with left accent bars. Green for connect, red for disconnect. Timestamp, device name, VID:PID, class, manufacturer.

5 Premium Themes

Neon, Catppuccin Mocha, Dracula, Nord, and Solarized Dark. Smooth 300ms transition between them. Glassmorphism panels with backdrop blur.

Known Devices Database

Remembers every device ever connected. Search, sort by 5 modes, set nicknames, view first/last seen timestamps and connection count.

Storage Detail Panel

Click any storage device to see animated capacity bars (green→yellow→red), volume info, model, serial, firmware, interface type.

File Logging

Every connect/disconnect event is logged to device-history.log with millisecond timestamps. Survives restarts.

CLI Mode

Run with --cli for colored terminal output. Same monitoring, no GUI. Pipe it, script it, watch it in a terminal.

System Tray

Closing the window hides to the system tray instead of quitting. Right-click to show, hide, or exit. Double-click to restore. Always watching, never in the way.

Device Nicknames

Rename any device to something you'll actually recognize. "USB Composite Device" becomes "Quest Link Cable" or "Wacom Tablet". Persisted across sessions.

Known Devices

Remembers every device it's ever seen with first-seen and last-seen timestamps. Build a history of your USB ecosystem over time.

Search & Sort

Filter devices and events by name, ID, or class. Sort by any column. Find what you're looking for in a list of 50+ USB devices.

Update Checker

Silently checks GitHub for new releases on startup. If a newer version exists, a clickable banner appears in the header.

How It Works

Simple WMI-based polling with diff detection.

Query WMI

Queries Win32_PnPEntity for all USB devices via the wmi crate. Gets name, device ID, description, manufacturer, and PnP class.

Snapshot & Diff

Takes a device snapshot every 500ms on a background thread. Diffs against the previous snapshot to find new and removed devices.

Log & Display

New events are pushed to the shared state, logged to file, and rendered as neon-styled cards in the GUI.

Tech Stack

Rust for speed and safety. Single binary, no runtime dependencies.

Rust Tauri v2 Svelte 5 WMI CSS Glassmorphism parking_lot

Download & Install

Download .exe

⬇ Installer (2.4 MB)

2.4 MB NSIS installer. Also available: Portable .exe (6.2 MB) or MSI (3.3 MB)

cargo install

cargo install --git https://github.com/TrentSterling/device-history

Requires Rust toolchain. Builds from source and installs to your cargo bin directory.

Build from source

git clone ...device-history
cd device-history
cargo build --release

Binary at target/release/device-history.exe.