A modern, native WinUI 3 desktop application to discover, customize, create, and apply personalized mouse cursor schemes on Windows 10 and 11.
No installation or administrative privileges required:
- Download
MouseCursorCustomizer-vX.Y.Z-win-x64.zipfrom the Latest Release. - Right-click the
.zipfile and select Extract All…. - Run
MouseCursorCustomizer.exe.
Note: Self-contained executable with bundled .NET 8 and Windows App SDK runtimes. Runs standalone on any modern 64-bit Windows 10 (version 1809+) or Windows 11 system.
- 🎨 Discover Curated Cursor Packs: Explore built-in cursor designs spanning categories like Cute, Minimal, Games, Nature, Neon, and Custom.
- ⚡ Instant Live Swapping: Apply normal select and link pointers across the Windows operating system with a single click.
- 🔄 One-Click Default Restore: Easily revert to the standard Windows aero cursor scheme at any time via the prominent top header button.
- 🛠️ Custom Cursor Creator: Build custom packs from
.curfiles. Features automatic header parsing, hotspot coordinate inspection, width/height extraction, and live thumbnail generation. - 📐 Scaling & Sizing Control: Adjust cursor sizing and view scaled comparisons before committing system changes.
- 📚 Personal Collection & Favorites: Bookmark favorite cursor styles and maintain private custom libraries in local storage.
- 🌗 Mica UI & Theme Support: Native Windows 11 Mica backdrop with automatic Light and Dark theme switching.
- 🔒 Privacy First & Offline: Pure local execution — zero telemetry, zero trackers, and zero background analytics. All configs reside in
%LOCALAPPDATA%\MouseCursorCustomizer.
Mouse Cursor Customizer/
├── App.xaml(.cs) # App lifecycle, system exception handlers, theme dispatch
├── MainWindow.xaml(.cs) # Shell UI, Mica backdrop, top navigation & active scheme bar
├── Views/
│ ├── DiscoverPage # Curated cursor pack catalog with real-time category filtering
│ ├── CollectionsPage # Explore grouped cursor collections
│ ├── CreatorPage # .CUR file import, hotspot validation, and pack generator
│ ├── ManagePage # Active pointer inspection and sizing controls
│ ├── MyCollectionPage # User-created and favorited cursor packs
│ ├── PackDetailDialog # Full cursor breakdown and inspection dialog
│ └── SettingsPage # Diagnostics, Windows cursor state, and theme settings
├── Services/
│ ├── CatalogService.cs # In-memory cursor catalog cache, indexing, and JSON sync
│ ├── CursorFileService.cs # Binary parser for .CUR headers, hotspots, and bitmap frames
│ ├── CursorNativeService.cs # Win32 SetSystemCursor, SystemParametersInfo, registry hooks
│ └── SettingsService.cs # Local settings persistence (%LOCALAPPDATA%\MouseCursorCustomizer)
├── Models/ # AppSettings, CursorItem, CursorPack
├── Helpers/ # AppLogger session diagnostics, WindowHelper Win32 interop
└── Assets/ # Bundled CUR/PNG assets, default packs, icons
| Component | Specification |
|---|---|
| UI Framework | WinUI 3 (Windows App SDK 2.4) with Mica Backdrop |
| Runtime | .NET 8 (net8.0-windows10.0.19041.0) |
| Native API Interop | Win32 user32.dll (SetSystemCursor, SystemParametersInfo, LoadCursorFromFileW) |
| JSON Serialization | Newtonsoft.Json 13.0.4 |
| Packaging Type | Pure Unpackaged (<WindowsPackageType>None</WindowsPackageType>) |
| DPI Awareness | Per-Monitor V2 (app.manifest) |
- OS: Windows 10 version 1809 (Build 17763) or later (Windows 11 recommended).
- SDK: .NET 8 SDK with Windows 10 SDK (19041) workload.
- IDE: Visual Studio 2022 (v17.8+) with .NET Desktop Development workload, or VS Code with C# Dev Kit.
Clone the repository and build using the .NET CLI:
# Clone the repository
git clone https://github.com/uponatime2019/MouseCursorCustomizer.git
cd "Mouse Cursor Customizer"
# Restore & build (x64)
dotnet build MouseCursorCustomizer.csproj -p:Platform=x64
# Run the application
dotnet run --project MouseCursorCustomizer.csproj -p:Platform=x64
# Standalone unpackaged release publish
dotnet publish MouseCursorCustomizer.csproj -c Release -p:Platform=x64 -o publish/MouseCursorCustomizer_PortableOr open MouseCursorCustomizer.sln in Visual Studio 2022, select x64 and Release, then press F5.
| Screen | Action | Description |
|---|---|---|
| Any Screen | Active Scheme Pill |
Click the top pill to instantly navigate to the Manage view |
| Any Screen | Restore Windows Default |
One-click dialog prompt to revert all pointers to Windows default |
| Discover | Search Box |
Filter packs in real-time by title or category |
| Discover | Category Pills |
Switch between Cute, Minimal, Games, Nature, Neon, and Custom |
| Creator | Browse Normal / Link |
Select local .cur files from disk for hotspot validation |
| Settings | Refresh Diagnostic State |
Re-read active Windows cursor registry paths and current scaling |
- WinUI 3 pure unpackaged standalone architecture
- Embedded .CUR binary parser and hotspot extraction
- Win32 live system cursor swapping engine
- One-click Windows default restoration
- Category filtering and favorites collection
- Animated Cursors (.ANI): Support for multi-frame animated Windows cursor files
- Cursor Pack Export / Import: Share
.curpackzip archives with the community - Per-Monitor Pointer Scaling: Dynamic pointer dimension adjustments per display
- Automatic Theme Synchronization: Sync custom cursor hues with Windows accent color
- Community Catalog Integration: Download new user-submitted packs directly from GitHub Releases
Contributions are warmly welcomed! Whether you want to fix a bug, suggest an enhancement, design new cursor packs, or improve documentation:
- Fork the Repository: Click the Fork button at the top right of this page.
- Create a Feature Branch:
git checkout -b feature/your-feature-name
- Commit Your Changes: Follow clear commit descriptions.
- Build & Verify: Confirm the solution builds with
0 errorsand0 warnings. - Open a Pull Request: Submit your PR with a concise description of your changes.
Check out our CONTRIBUTING.md guide for coding conventions and repository structure.
This project is licensed under the MIT License — free for personal, educational, and commercial use.
