{"id":452400,"date":"2026-05-16T19:39:15","date_gmt":"2026-05-16T19:39:15","guid":{"rendered":"https:\/\/www.newsbeep.com\/ie\/452400\/"},"modified":"2026-05-16T19:39:15","modified_gmt":"2026-05-16T19:39:15","slug":"i-got-tired-of-hunting-through-windows-for-every-setting-so-i-built-my-own-control-center","status":"publish","type":"post","link":"https:\/\/www.newsbeep.com\/ie\/452400\/","title":{"rendered":"I got tired of hunting through Windows for every setting, so I built my own control center"},"content":{"rendered":"<p>If you want to tweak anything on Windows, you need to know where everything is hidden away before you do. Display settings are in Settings, but color calibration is in Control Panel. Services live in services.msc. Scheduled tasks live in taskschd.msc.     <a href=\"https:\/\/www.xda-developers.com\/between-registry-and-group-policy-editor-always-pick-latter\/\" target=\"_blank\" rel=\"nofollow noopener\">Group policy<\/a> hides behind gpedit.msc, which isn&#8217;t even installed on Home editions. Half the things I might actually want to do still require regedit and a path I have to look up every single time. It&#8217;s tiring.    <\/p>\n<p>The Settings app and Control Panel have been coexisting since Windows 8, and they still don&#8217;t agree on which of them owns sound, networking, or storage. Microsoft has, more or less, told us why it can&#8217;t get rid of the Control Panel. The reason is pretty funny, but also makes perfect sense given how long Windows has been developed for, and it&#8217;s that the company is afraid of breaking decades-old printer and network drivers.<\/p>\n<p>What I did instead was write my own utility to sidestep the problem, as I didn&#8217;t find any other programs that really achieved what I wanted or did it in the way that I wanted them to. It&#8217;s a single Avalonia window that surfaces the diagnostics and tweaks I touch most often, with the actual work done by PowerShell scripts I can read and edit by hand. It&#8217;s not a debloater, nor do I want it to be, but it manages my Windows install and makes keeping an eye on my PC a whole lot easier.<\/p>\n<p>This program originally started as a PowerShell-only utility, specifically a program I could give to friends who come to me for PC troubleshooting help. In fact, in my friend group, it&#8217;s become a running joke: one of them has even named me &#8220;Google&#8221; on Discord just because half the time he comes to me before looking it up himself.<\/p>\n<p>With that said, a PowerShell utility seemed boring, and I went down a rabbit hole of reading about WinUI 3 and the mess that&#8217;s been. I had long heard of Avalonia and seen that Avalonia 12 had recently released, but unfortunately, FluentAvalonia still only supports version 11. Still, it was a fun challenge, and the result is a program that I like the look of, is lightweight, and does exactly what I need it to. It&#8217;s completely open source and <a href=\"https:\/\/github.com\/Incipiens\/WindowsControlCenter\/tree\/main\" rel=\"noopener noreferrer nofollow\" target=\"_blank\">available on GitHub<\/a> so that you can download it, run it, or even extend it.<\/p>\n<p>                        One application covers what fifteen panels normally do<\/p>\n<p>            Everything all in one place<\/p>\n<p>        <img width=\"1650\" height=\"976\" loading=\"lazy\" decoding=\"async\" alt=\"Windows Command Center \" data-img-url=\"https:\/\/www.newsbeep.com\/ie\/wp-content\/uploads\/2026\/05\/windows-command-center-1.png\" src=\"https:\/\/www.newsbeep.com\/ie\/wp-content\/uploads\/2026\/05\/windows-command-center-1.png\" class=\"img-brightness-opt-out\"\/><\/p>\n<p>The app lands on an overview page with the things I care most about: DNS latency against public resolvers, system uptime, whether a reboot is pending, and how much temp-file garbage has accumulated. That page exists because these are four things that can tell you quite a lot about your system right away.<\/p>\n<p>Below the overview, every page in the sidebar maps to a real thing I do on Windows. The Health page shows a bunch of checks about the state of your PC, like the Windows version, activation status, Secure Boot, TPM, Defender, BitLocker, updates, drive health, CPU, memory, GPU, battery, firewall, and a quick event-log scan from the past 24 hours. The Network page covers DNS health, the active adapters, the Wi-Fi profile, the listening ports on the machine, and a DNS profile switcher that flips between Cloudflare, Google, Quad9, AdGuard, and DHCP without needing to go to the network adapters page.<\/p>\n<p>        <img width=\"1650\" height=\"976\" loading=\"lazy\" decoding=\"async\" alt=\"Windows Command Center health page\" data-img-url=\"https:\/\/www.newsbeep.com\/ie\/wp-content\/uploads\/2026\/05\/windows-command-center-2.png\" src=\"https:\/\/www.newsbeep.com\/ie\/wp-content\/uploads\/2026\/05\/windows-command-center-2.png\" class=\"img-brightness-opt-out\"\/><\/p>\n<p>There are full pages for services, scheduled tasks, drives, drivers, power plans, gaming toggles, privacy toggles, and the taskbar mess in Windows 11. Every one of those is something that I find genuinely useful, and the services and scheduled tasks windows even have per-row Start, Stop, Restart, Enable, Disable, and Run buttons. They both have a filter box at the top, too, so searching is easy.<\/p>\n<p>The whole point of this application is to have all of my most used tweaks in a lightweight GUI, so that I can run basic toggles, tweaks, and diagnostics all from the one window. This way, I don&#8217;t need to go looking up the registry path or the cmdlet in PowerShell just to change something.<\/p>\n<p>                        Every check is a PowerShell script, and every tweak is JSON<\/p>\n<p>            Designed to be extensible<\/p>\n<p>The C# shell is intentionally thin. Every diagnostic on every page is a .ps1 file under a Scripts\/ folder that sits right next to the executable. The C# layer&#8217;s job is to launch the script, read one JSON object off stdout, and render it as a coloured tile on the relevant page. That&#8217;s all it does.<\/p>\n<p>Each script emits a status of ok, warn, fail, or info, a title, a one-line summary, and an optional details array for the expandable section. I wrote a Write-Result helper so that every script can just re-use it, and the runner itself just reads stdout out from the bottom up and grabs the last parseable JSON line. <\/p>\n<p>What this means is that you can open Scripts\/Network\/dns-health.ps1 in any editor, see exactly how the latency test works, change the resolver list, and re-run it. You can also run the script by hand from a PowerShell prompt and get the same JSON the app gets. There&#8217;s no compiled black box doing things on my system that I cannot see, and there is nothing in there that I can&#8217;t copy out and run somewhere else. For example, if you like the scripts, but you don&#8217;t like the look of C# or Avalonia, feel free to just take them and put them in a new wrapper. It&#8217;s designed in a way that all of the scripts can be executed separately from the actual wrapper, so that also means you can replace the wrapper.<\/p>\n<p>The toggle pages, Gaming, Privacy, and Taskbar and Shell, work the same way, except they&#8217;re not even scripts. They read from a JSON manifest at Manifest\/tweaks.json. Each entry names the registry path, the value name, the type, the on value, and the off value, and the C# layer handles backup, apply, revert, and dry-run preview generically over that data.<\/p>\n<p>So adding a new tweak, for the cases where a registry write is all it takes, is just a JSON edit like this, no recompilation required:<\/p>\n<p>{<br \/>\n  &#8220;id&#8221;: &#8220;shell.show-seconds-in-clock&#8221;,<br \/>\n  &#8220;name&#8221;: &#8220;Show seconds in system clock&#8221;,<br \/>\n  &#8220;category&#8221;: &#8220;shell&#8221;,<br \/>\n  &#8220;registry&#8221;: [<br \/>\n    { &#8220;path&#8221;: &#8220;HKCU\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced&#8221;,<br \/>\n      &#8220;name&#8221;: &#8220;ShowSecondsInSystemClock&#8221;,<br \/>\n      &#8220;type&#8221;: &#8220;DWORD&#8221;,<br \/>\n      &#8220;value&#8221;: &#8220;1&#8221;,<br \/>\n      &#8220;offValue&#8221;: &#8220;0&#8221; }<br \/>\n  ]<br \/>\n}<\/p>\n<p>Once you restart the program, that will show up on the Shell page with a toggle, a backup that runs before the write, a revert that restores the original value, and a dry-run preview that prints current versus next before anything is applied. For anything more involved than a registry write, running an executable, calling a CIM class, parsing structured output, I drop a .ps1 into the right folder instead and wire it up to a tile instead.<\/p>\n<p>In the future, I plan to make scripts fully extensible as well so that you can write your own PowerShell scripts, drop them in the appropriate folder, and have them show up in the UI. I&#8217;m not as familiar with C# as I am with Python or C, and .NET&#8217;s XAML caused me a lot of headaches. Registry edit tweaks are a lot simpler to audit and treat consistently as opposed to PowerShell scripts, hence why I focused on these first.<\/p>\n<p>                        Every change writes a .reg backup before it touches anything<\/p>\n<p>            Easy to revert<\/p>\n<p>        <img width=\"1650\" height=\"976\" loading=\"lazy\" decoding=\"async\" alt=\"Windows Command Center registry backup\" data-img-url=\"https:\/\/www.newsbeep.com\/ie\/wp-content\/uploads\/2026\/05\/windows-command-center-8.png\" src=\"https:\/\/www.newsbeep.com\/ie\/wp-content\/uploads\/2026\/05\/windows-command-center-8.png\" class=\"img-brightness-opt-out\"\/><\/p>\n<p>Something that really bothers me about tools like this, when dealing with the registry, is that they aren&#8217;t totally transparent about the changes they&#8217;ve made, how to undo those changes, or sometimes, even what they&#8217;re actually doing. That&#8217;s something I wanted to get right with this tool for a public release. For starters, every script that makes a change accepts a -DryRun switch and returns the same JSON shape with a plannedChanges[] array. Before I click Apply, the app shows me current versus next for every registry value the toggle is about to write. <\/p>\n<p>The backup itself is a standard .reg file, stored in the same format as the Registry Editor&#8217;s own exports. It&#8217;s also using the normal hex encodings for DWORDs, binary blobs, expand strings, and multi-strings. The app stores them in %LOCALAPPDATA%\\WindowsControlCenter\\Backups\\, one per tweak, named with a timestamp like 20260515_142530_shell.show-seconds-in-clock.reg so that you can know when it was taken and what it was for.<\/p>\n<p>        <img width=\"1650\" height=\"976\" loading=\"lazy\" decoding=\"async\" alt=\"Windows Command Center showing applied tweaks\" data-img-url=\"https:\/\/www.newsbeep.com\/ie\/wp-content\/uploads\/2026\/05\/windows-command-center-9.png\" src=\"https:\/\/www.newsbeep.com\/ie\/wp-content\/uploads\/2026\/05\/windows-command-center-9.png\" class=\"img-brightness-opt-out\"\/><\/p>\n<p>Before writing the new value, the code reads whatever was there before and records it. If the value did not exist but the parent key did, the backup writes a &#8220;Name&#8221;=- line so a revert deletes it cleanly instead of leaving a stray state behind. If the key itself did not exist, the backup records that as a comment rather than pretending there was a value to restore.<\/p>\n<p>What this means, though, is that if the app suddenly stops working, or if anything weird happens, or if any other user of this tool decides they don&#8217;t want to use it anymore, it&#8217;s trivial to undo any registry changes, Double-click any of those .reg files in Explorer and Windows will restore the values without my utility needing to be involved at all. There&#8217;s also an in-app revert button that does the same thing, and it just shells out to reg.exe import on the file. The &#8220;Applied&#8221; page lists every tweak I have currently turned on, with a button on each row that will call that same .reg file. The underlying ledger where all of this is tracked is a flat JSON file at %LOCALAPPDATA%\\WindowsControlCenter\\applied.json, so I can see exactly what state the app thinks Windows is in by opening one file in Notepad.<\/p>\n<p>Nothing about the rollback is locked behind the app, and that was the whole point. I tried to make it as open as possible.<\/p>\n<p>                        It&#8217;s not a debloater, and it never will be<\/p>\n<p>            Nothing against debloating tools, though<\/p>\n<p>        <img width=\"1650\" height=\"976\" loading=\"lazy\" decoding=\"async\" alt=\"Windows Command Center storage page\" data-img-url=\"https:\/\/www.newsbeep.com\/ie\/wp-content\/uploads\/2026\/05\/windows-command-center-10.png\" src=\"https:\/\/www.newsbeep.com\/ie\/wp-content\/uploads\/2026\/05\/windows-command-center-10.png\" class=\"img-brightness-opt-out\"\/><\/p>\n<p>I&#8217;m not against custom debloating tools, and in fact, <a href=\"https:\/\/www.xda-developers.com\/i-used-win11debloat-on-my-pc-and-i-could-never-install-windows-without-it-again\/\" target=\"_blank\" rel=\"nofollow noopener\">I wouldn&#8217;t install Windows 11 without one these days<\/a>. But this isn&#8217;t that, and there are plenty of better-suited tools out there that will do it significantly better than I would. I don&#8217;t want to reinvent the wheel. Instead, every tweak here is something I would do by hand on a normal Windows install and trust to revert cleanly, like Hardware-accelerated GPU Scheduling, the classic right-click menu in Windows 11, hiding the Widgets button, and the standard set of telemetry and advertising-ID toggles.<\/p>\n<p>The whole point of the program is that it&#8217;s lightweight and minimal, without a settings panel, tray icon, scheduled scans, or notifications. In fact, I didn&#8217;t even want to build anything that needs a native COM helper. When I first started toying with Avalonia a few weeks ago and had the idea to build this, I had semi-working audio-related tweaks, but ultimately threw it away. The reason is that I don&#8217;t want to be responsible for keeping a shim alive against whatever Microsoft does to Windows audio next, especially because it&#8217;s all undocumented. <\/p>\n<p>For a clean install, there are some useful tweaks here that you can apply, but it&#8217;s a tool that I keep running in the background so that I can get a picture of my current system health. I can see if my DNS is being weird, or if I have too many start-up applications, and that&#8217;s really it. It&#8217;s not going to replace Settings or the Control Panel, but it just makes a bunch of tools available in the one window with a written record of what was changed and a way to revert each of those changes if needed. <\/p>\n<p>Microsoft will keep the Settings app and Control Panel in coexistence for as long as necessary, and that&#8217;s fine, I get it, but I don&#8217;t need Microsoft&#8217;s blessing to put the controls I care about in one place. Hopefully this tool is as useful for you as it is for me!<\/p>\n","protected":false},"excerpt":{"rendered":"If you want to tweak anything on Windows, you need to know where everything is hidden away before&hellip;\n","protected":false},"author":2,"featured_media":452401,"comment_status":"","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6],"tags":[61,60,80],"class_list":["post-452400","post","type-post","status-publish","format-standard","has-post-thumbnail","category-technology","tag-ie","tag-ireland","tag-technology"],"_links":{"self":[{"href":"https:\/\/www.newsbeep.com\/ie\/wp-json\/wp\/v2\/posts\/452400","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.newsbeep.com\/ie\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.newsbeep.com\/ie\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.newsbeep.com\/ie\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.newsbeep.com\/ie\/wp-json\/wp\/v2\/comments?post=452400"}],"version-history":[{"count":0,"href":"https:\/\/www.newsbeep.com\/ie\/wp-json\/wp\/v2\/posts\/452400\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.newsbeep.com\/ie\/wp-json\/wp\/v2\/media\/452401"}],"wp:attachment":[{"href":"https:\/\/www.newsbeep.com\/ie\/wp-json\/wp\/v2\/media?parent=452400"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.newsbeep.com\/ie\/wp-json\/wp\/v2\/categories?post=452400"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.newsbeep.com\/ie\/wp-json\/wp\/v2\/tags?post=452400"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}