A modern, fast alternative to the Windows "Add or Remove Programs" panel. Built with Tauri, React, and Rust.
The built-in Windows app manager is slow, cluttered with ghost entries from apps you already deleted, and hasn't been redesigned in years. Purgr fixes all of that:
- Detect orphan entries — apps deleted but still lingering in the registry
- Real app icons — extracted from executables, not generic placeholders
- WinDirStat-style disk analyzer — treemap visualization of your entire drive
- Actually works — handles Steam games, Adobe apps, MSI packages, and everything in between
- Scans HKLM and HKCU registry (32-bit and 64-bit)
- Detects orphaned entries (install folder no longer exists)
- Uninstall apps directly, with support for:
- Standard uninstallers
- MsiExec packages
- Protocol-based (Steam, Epic, etc.)
- Automatic UAC elevation when needed
- Search and filter by name, publisher, or status
- Bulk remove all orphan registry entries in one click
- Open install location in Explorer
- WinDirStat-style treemap visualization
- Multiple drive support
- MFT-based scanning for near-instant results on NTFS drives
- Parallel scanning with rayon for non-NTFS drives
- Progressive loading — see results while scan continues
- Delete files and folders directly from the treemap
- Right-click context menu with Open in Explorer
- Custom dark and light themes
- Multi-language support (English, French — easy to contribute more)
- Keyboard shortcuts (Ctrl+F search, arrow key navigation)
- Virtualized app list — smooth with 500+ apps
- Custom titlebar with native window controls
- Admin elevation on release builds for full access
Go to Releases and download the latest .exe installer.
Prerequisites:
# Clone
git clone https://github.com/Serotops/purgr.git
cd purgr
# Install dependencies
pnpm install
# Dev mode
pnpm tauri dev
# Release build
pnpm tauri buildThe installer will be in src-tauri/target/release/bundle/nsis/.
- Copy
src/locales/en.jsontosrc/locales/xx.json(wherexxis the language code) - Translate all values — keep the keys in English
- Open
src/hooks/useI18n.tsxand add:Then add to theimport xx from "@/locales/xx.json";
LANGUAGESobject:"xx": { name: "Language Name", data: xx },
- Submit a pull request
Missing translations automatically fall back to English.
pnpm tauri dev # Start dev server + Tauri window
pnpm build # Build frontend onlyThe Rust backend is in src-tauri/src/. The React frontend is in src/.
- Frontend: React + TypeScript + Tailwind CSS + shadcn/ui
- Backend: Rust via Tauri v2
- Disk scanning: FindFirstFileExW + rayon (parallel) + NTFS MFT parsing
- Bundler: Vite
Made by Serotops