FluentCleaner 26.11.03 - The Plugin Update
I'm getting slower. I'd like to blame the framework, but I think it's just me. There was a time I'd ship three tools in a weekend. These days I open an editor, stare at a Grid.ColumnDefinitions for twenty minutes, and go make coffee. And at some point, while maintaining Bloatynosy over here and FluentCleaner over there and that other thing I keep forgetting the name of, it hit me that I wasn't maintaining several tools. I was maintaining several copies of myself, and all of them were tired
So I stopped. I pulled the tweaking and debloating engines out of my other tools and folded them into the WinUI 3 FluentCleaner, not bolted on, but as plugins: self-contained folders that dock into the app and can be ripped back out without leaving a scar. I actually tested that. Deleted both folders, hit build, compiled green. Then I put them back, because I'd like to keep them.
This is the biggest release FluentCleaner has had. The app grew two entire tools, a registry tweaker and a debloater and that worried me, because bolting features onto a cleaner is exactly how cleaners turn into the bloated suites I got into this to avoid. The plugin split is what saved it: the new tools sit beside the cleaner instead of inside it, and they pay for themselves
From here on, this might be the only app I keep developing.
Famous last words. Ask me again in two months.
Funny thing about a release built on tidying up: most of my evenings went into deleting rather than writing. Two debloaters that disagreed with each other. A Blazor web app nobody asked for. An update check that worked differently in each edition. All gone
And somehow it came out a third faster from double-click to a usable list, which was not the plan. Turns out the quickest way to speed something up is to stop it doing things nobody asked for
So the fattest release so far is also the fastest: a third quicker from double-click to a usable list. Two new tools in, two old ones out, and the thing starts sooner than it did when it could do less
Still free, still no ads, still nothing phoning home. If one of those evenings was worth something to you: coffee or PayPal.
Added
- [Added] Tweaks plugin - 98 Windows registry settings. It checks what's already set on your PC, applies what you pick, and puts any of it back
- [Added] Apps plugin - uninstaller for Store packages and classic programs, with a safety rating so you can see what Windows actually needs before you tick it
- [Added] Plugin architecture. Each tool is one folder under
Plugins\with its own engine, pages and data. Adding one to the+menu is two lines - [Added] Rule packs without a rebuild: drop an
.iniintoPlugins\Tweaks\. A section that already exists replaces the earlier one, so a pack can correct a rule instead of only adding to it. - [Added] Rule translations are plain files too.
Lang\de-DE.iniships complete, all 98 of them. A new language is one file. No code, no build, no pull request. - [Added] Right-click on any row: apply, reset, copy the registry path, open it in Regedit, uninstall just that one.
- [Added] A Status column. Green tick for what's already applied on your machine, grey for what's still open.
- [Added] Category filter and "only open" - what makes a 94-row catalogue survivable
- [Added] The selected rule's description, plus every registry value it writes, in a strip under the list. This app writes to your registry. "Trust me" isn't good enough
- [Added] A new website for the update check. One HTML file now, where the old one loaded a WebAssembly runtime first
Improved
- [Improved] A third faster from double-click to a usable list. 689 ms down to 461 ms here. Two wins stacked.
- [Improved] Catalogue load: ~325 ms > ~145 ms. The "is this installed?" check runs across cores now and stops asking about the same place twice - 4775 detection lines, only 3408 of them distinct, and a few browser paths repeat 23 times each
- [Improved] Window: ~364 ms > ~316 ms. It stopped building the first page before showing itself, and stopped constructing a donation prompt on every launch. For scale, an empty WinUI 3 window costs 221 ms on the same machine
- [Improved] The status bar says what its numbers mean:
175 of 4076 entries. - [Improved] Both editions check for updates the same way, in the same place.
- [Improved] Tick boxes stopped fighting the row highlight. The box ticks, everything else selects
- [Improved] Right-click works across the whole row, not only where there happens to be text
- [Improved] Row menus are built once per page instead of once per row
- [Improved] Plugin data lives inside the plugin that reads it. Shared helpers sit in
Plugins\Shared\instead of pretending to belong to the core app
Removed
- [Removed] The terminal's
appxdebloater and itsWinappx.inidatabase, plus the settings row that downloaded it. The Apps plugin does the same job from a list you can see - and two debloaters that disagreed about the same question was one too many. - [Removed] FluentCleaner Inspector. Nine megabytes of WebAssembly runtime to tell you whether a newer build exists. A plain page does that now
- [Removed] The donation bubble at startup. 35 ms of every launch, and the Settings page asks politely enough
- [Removed] The category count from the status bar. The tree next to it already shows them
Fixed
- [Fixed] The update check told you that you were up to date while two releases were out. The version number lived in three places and they had drifted apart. One script keeps them in step now, and it won't stay quiet when they disagree.
- [Fixed] The cleaner shows what it's scanning again, folder by folder. The scanner had been reporting all along, the tabbed rewrite simply left out the line that displayed it, so every message went into a tooltip nobody was hovering over.
- [Fixed] "Check again" in Tweaks did nothing on the second run and left the buttons greyed out for good.
- [Fixed] Dialogs rendered light while the app was dark.
- [Fixed] A stream of first-chance
NamedResourceexceptions behind the tweak scanner. - [Fixed] "Uninstall 1 apps?" is a sentence now
Known rough edges
- Tweaks and Apps are translated in German and English only. Other languages fall back to English on those two pages.
- Anything under the machine hive needs administrator rights. The list marks those rows with a lock before you run them, not after.
Two editions, one cleaner
Same cleaning engine, two independent builds. Both are free, portable and ad-free.
| For whom | Needs | Latest | |
|---|---|---|---|
| Modern · WinUI 3 | Windows 11 users who want tabs, the tweaker and the debloater | Windows 10 1809+ · nothing to install | 26.11.10 — Download · What's new |
| Classic · WinForms | Older or slower PCs, USB sticks, locked-down machines | .NET 4.8, already on your PC · 2 MB | 1.19.269 — Download |
winget install --id Builtbybel.FluentCleaner --exact installs the Modern edition.
Not sure which one? Modern vs. Classic · Support development · Ko-fi