Keyboard Cleaner is a small WPF utility (.NET 10) that temporarily blocks keyboard and (optionally) pointing device input while you clean your peripherals. The UI is borderless and includes a lock overlay mode.
Important: This project was created entirely by AI (Google Antigravity, GitHub Copilot).
- Windows 10 / 11
- .NET 10 SDK installed: https://dotnet.microsoft.com
- Visual Studio 2026 (recommended) or any editor that supports WPF/.NET 10
From the repository root you can build the solution with the dotnet CLI or Visual Studio.
Using dotnet CLI:
- Restore and build: dotnet build KeyboardCleaner.slnx -c Release
Using Visual Studio:
- Open KeyboardCleaner.slnx
- Restore NuGet packages if prompted
- Build the solution (Build -> Build Solution)
- From Visual Studio: Set KeyboardCleaner as the startup project and run (F5) or Launch without debugging (Ctrl+F5).
- From command line (run from solution folder): dotnet run --project KeyboardCleaner/KeyboardCleaner.csproj --configuration Release
Some features (blocking elevated windows/processes) may require Administrator rights. If the app is not run elevated, a warning banner appears and the app will not be able to block inputs on elevated windows (for example, Task Manager). Use the "Elevate" button in the app to restart elevated.
Run unit tests using the dotnet CLI:
dotnet test KeyboardCleaner.Tests/KeyboardCleaner.Tests.csproj
- The app uses a borderless window. Drag the header or background to move the window.
- If you cannot start the lock overlay or inputs are not blocked, try running the app as Administrator and re-run the device scan.
- The project targets .NET 10; ensure the .NET 10 runtime and SDK are installed.
This is a small utility — open a PR with clear descriptions for bug fixes or improvements.
MIT License. See LICENSE file for details.