Skip to content

Ash1421/QuickA-Cleanup

Repository files navigation

🧹 QuickA-Cleanup

Smart Quick Access Navigation Pane cleaner for Windows Explorer — dual GUI + CLI, self-contained, and fast.


✨ Socials & Stars

Discord Server Invite GitHub Stars

📦 Repository Information

Latest Version CodeFactor Grade Total Downloads Downloads at Latest GitHub Issues Closed Issues New Issue

❤️ Made With Love Using

.NET C# WPF Windows GNU Shields.io CodeFactor

📜 Licensed Under

License: GPL v3.0


👤 For Regular Users

What does this do?

When you open File Explorer, the left sidebar shows a list of folders — things like OneDrive, Desktop, Downloads, and entries left behind by apps you've already uninstalled. Windows gives you no easy built-in way to remove these leftovers.

QuickA-Cleanup scans for those entries and lets you remove them in a few clicks. It backs everything up automatically before touching anything, and restarts Explorer when done — available as both a modern GUI app and a command-line tool.


🚀 Getting Started — 3 Steps

1. Download

Go to the Latest Release and grab the right file for your PC:

I have a... GUI CLI
Normal Windows PC (most people) QuickA-Cleanup-GUI-VX.X.X-win-x64.exe QuickA-Cleanup-CLI-VX.X.X-win-x64.exe
Older 32-bit PC QuickA-Cleanup-GUI-VX.X.X-win-x86.exe QuickA-Cleanup-CLI-VX.X.X-win-x86.exe
Windows on ARM QuickA-Cleanup-GUI-VX.X.X-win-arm64.exe QuickA-Cleanup-CLI-VX.X.X-win-arm64.exe

Not sure? Grab win-x64 — it works on most Windows PCs. Use the GUI unless you prefer the terminal.

2. Run it

Double-click the .exe. If Windows shows a SmartScreen warning click More info → Run anyway. The app will ask for Administrator permission — required to read and modify registry entries.

3. Clean up

  • Click Scan to find navigation pane entries
  • Tick the ones you want to remove
  • Click Remove Selected and confirm

Explorer restarts automatically and the entries will be gone. ✅

Note

Changed your mind? A backup file named QuickA-Backup-<timestamp>.reg is automatically saved next to the .exe every time you remove something. Double-click it and click Yes to restore everything instantly. You can also create a manual backup anytime via Settings → Backup.


🏷️ What Gets Flagged Automatically?

QuickA-Cleanup recognises these common entries and highlights them as Bloatware in the item list:

Name Added by
OneDrive — Personal Microsoft OneDrive
OneDrive for Business Microsoft 365 / work accounts
SharePoint Microsoft 365

Everything else shows as Unknown — typically entries left by third-party apps.

Tip

Essential system folders (Desktop, Documents, Downloads, Pictures, Music, Videos) are always hidden from the list and cannot be accidentally removed.


❓ FAQ

Is this safe to use?

Yes. Before removing anything the tool saves a .reg backup automatically. If you want to undo changes, double-click the backup file and click Yes. You can also use Dry Run mode to preview everything before committing.

Will this delete my actual files or folders?

No. It only removes the shortcut entries from the navigation pane. Your files and folders on disk are never touched.

Why does it need Administrator permission?

Navigation pane entries are stored in the Windows Registry. Reading and writing registry keys requires elevated permissions — the same as installing or uninstalling software.

File Explorer looks wrong after running it — what do I do?

The tool restarts Explorer automatically. If something still looks off, restart it manually:

  1. Press Ctrl + Shift + Esc → Task Manager
  2. Find Windows Explorer → Right-click → Restart

To restore removed entries, find the QuickA-Backup-*.reg file next to the .exe, double-click it, and click Yes.

SmartScreen is blocking the app — is it a virus?

No. SmartScreen warns about any .exe without a paid code-signing certificate. QuickA-Cleanup is fully open source — every line of code is in this repository. Click More info → Run anyway.

How do I test it without risking anything?

Use Settings → Testing in the GUI — download and install dummy test entries with one click, scan to see them appear, then remove them. Or use the testpins.reg file from this repo directly: double-click to import, then use QuickA-Cleanup to remove them.


🔧 For Advanced Users & Developers

📋 Full Feature List

GUI:

  • Modern WPF dark-theme window with custom title bar, drag, minimize, close
  • Three always-visible status indicator dots (Bloat / Test pins / Errors) with ease-in-out pulse animation on the testpin dot when entries are detected
  • Item list with subtle amber left-border accent on bloatware rows, green on testpin rows
  • Row fade-out animation on removal
  • Progress bar + live sub-text during scan and removal
  • Dry Run and Backup toggles in the scan bar
  • Settings modal — frosted glass overlay centered to the main window

Settings modal:

  • Testing section — download + install + remove testpins with live status dot (green/red)
  • Backup section — manual .reg backup of all current Quick Access entries
  • Log section — TRACE/DEV/WARN/ERROR level filter, expandable log viewer with error dot, auto-scroll, clear button, writes to QuickA-Cleanup.log

Core:

  • Parallel registry scanning via Parallel.ForEach + ConcurrentBag
  • Known bloatware tagging (OneDrive, OneDrive for Business, SharePoint)
  • Testpin detection on startup with status bar warning
  • Protected system folder blacklist (Desktop, Documents, Downloads, Pictures, Music, Videos)
  • User-defined custom folder protection list in ItemFilter.cs
  • Automatic .reg backup before any deletion
  • Explorer restart after removal
  • Custom app icon (explorer_clean_x64x64.ico)

CLI:

  • Same scan/remove/backup/dry-run/restore logic as GUI
  • --dry-run, --no-backup, --help flags
  • Color-coded table output with bloatware tagging
  • Trimmed, self-contained single-file publish
🗂️ How It Works — Registry Internals

Windows stores navigation pane entries under:

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Desktop\NameSpace

Each sub-key is a GUID. The (Default) value is the display name shown in File Explorer. QuickA-Cleanup enumerates these sub-keys, filters out protected GUIDs and user-defined custom folder names, then presents the remainder as removable.

Removal is done via Registry.CurrentUser.OpenSubKey(..., writable: true)DeleteSubKeyTree. The backup step serialises the keys into a valid .reg file using Unicode encoding before any deletion.

Explorer is restarted by calling Process.Kill() on all explorer.exe instances, sleeping 800ms, then Process.Start("explorer.exe").

🛠️ Customisation Guide

All filtering logic lives in Core/Services/ItemFilter.cs.

Add a GUID to the protected blacklist (never shown, never removable):

private static readonly HashSet<string> Blacklist =
    new(StringComparer.OrdinalIgnoreCase)
    {
        "{YOUR-GUID-HERE}",  // description
        // ...
    };

Register a known bloatware entry (shown with amber highlight and "Bloatware" tag):

private static readonly Dictionary<string, string> KnownItems =
    new(StringComparer.OrdinalIgnoreCase)
    {
        { "{YOUR-GUID-HERE}", "Friendly Display Name" },
        // ...
    };

Protect a custom folder by name (case-insensitive, uses Contains):

private static readonly string[] CustomFolders =
{
    "My Folder Name",
    // ...
};

Finding a GUID: open regedit.exe and navigate to:

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Desktop\NameSpace

Each sub-key is a GUID. The (Default) value is the display name.

📦 Build Instructions

Requires .NET SDK 9.0.

GUI — win-x64:

dotnet publish QuickA-Cleanup-GUI\QuickA-Cleanup-GUI.csproj -c Release -r win-x64 --self-contained true -p:PublishSingleFile=true -p:IncludeNativeLibrariesForSelfExtract=true -p:DebugType=None -p:DebugSymbols=false

CLI — win-x64:

dotnet publish QuickA-Cleanup-CLI\QuickA-Cleanup-CLI.csproj -c Release -r win-x64 --self-contained true -p:PublishSingleFile=true -p:IncludeNativeLibrariesForSelfExtract=true -p:PublishTrimmed=true -p:DebugType=None -p:DebugSymbols=false

Replace -r win-x64 with -r win-x86 or -r win-arm64 for other targets.

⚠️ WPF requires the -windows target framework suffix — the .csproj files already handle this. Do not change net9.0-windows to net9.0.

Triggering an automated release via commit message:

Release V2.0.0

Commits containing Testing, Dev, or Development are skipped automatically.

🚀 CLI Flags
QuickA-Cleanup-CLI.exe [options]
Flag Description
--dry-run Preview all changes — nothing written to registry
--no-backup Skip the automatic .reg backup
--help / -h Show usage and exit

🐛 Issues & Support

Found a bug? Have a suggestion?


📄 License

This project is licensed under the GNU General Public License v3.0.

  • ✅ Commercial use, distribution, and modification allowed
  • ⚠️ Must disclose source and changes
  • ⚠️ Derivative works must be open-source under the same license

Read the full license here.


⚠️ Disclaimer

By using, editing, or publishing this tool you acknowledge that you have read and understood the license terms and agree to be bound by them.

Modifying the Windows Registry carries inherent risk. Always use the built-in backup feature before making changes. Use at your own discretion.


💫 Star History

Star History Chart

If you find this tool useful, please consider giving it a ⭐!

Made with 💜 by @Ash1421

About

Smart Quick Access Navigation Pane cleaner for Windows Explorer — dual GUI + CLI, self-contained, and fast.

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project

Contributors

Languages