This is only for NVIDIA GPU's. Allows you to change display settings and easily switch between different profiles without having to manually adjust settings each time. Applies to the monitor and not a specific program.
Fork maintained by @th14g0cps with the following improvements over the original project.
- Start with Windows now works correctly — Fixed issue where the "Start with Windows" option wasn't functioning due to UAC elevation restrictions. Now uses Windows Task Scheduler (
schtasks.exe) instead of registry, allowing the app to launch at startup with admin privileges.
- Updated GitHub Actions workflow to Node.js 24 compatible versions.
- Suppressed XML comment warnings from the
WindowsDisplayAPIexternal library. - Added automated build and release workflow to compile self-contained
.exeon every push and create GitHub Releases on version tags.
- Target framework updated from
net7.0-windowstonet10.0-windowsacross all projects in the solution. - Removed hardcoded references to .NET 7 DLLs and paths.
- Removed
System.Drawing.Commonpackage (built into the Windows Desktop .NET 10+ runtime).
New feature that monitors running processes and automatically applies color profiles:
- Create rules linking an executable (e.g.
cs2.exe) to a specific monitor and profile. - When the process is detected as running, the profile is applied automatically.
- When the process exits, all monitors revert to the Default profile.
- Rules are persisted in
Data\Data.jsonalongside all other application data. - Monitoring runs in the background with a 2-second polling interval, with negligible performance impact.
- Instead of typing the executable name manually, a Browse... button opens a file picker filtered to
.exefiles.
- A Start with Windows checkbox registers or unregisters the application in the Windows startup registry key (
HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run).
- Main window is now resizable with a minimum width of 750px — dropdowns no longer break on smaller layouts.
- Buy Me a Coffee button added to the top-right toolbar, linking to buymeacoffee.com/th14g0.
- UAC manifest embedded — the app automatically requests administrator elevation on launch (required by Windows to apply display color settings).
- Adjust brightness, contrast, gamma, and digital vibrance per monitor.
- Automatically detects all displays connected to the GPU and creates a default profile for each.
- Up to five profiles per monitor for quick switching between configurations.
- Apply a profile as active — optionally auto-apply on Windows startup.
- Process Rules: automatically switch profiles when specific applications are running.
- Start with Windows option built into the UI.
- Minimizes to the system tray. Right-click the tray icon to show or exit.
- Hover over the tray icon to see the active profile for each monitor.
- Hotkey support: assign a keyboard shortcut to any profile for instant switching.
- NVIDIA GPU with installed drivers
- Windows 10 or 11
- .NET 10 Desktop Runtime (x64) — required to run the application
- Run
NvidiaDisplayController.exeas Administrator (a UAC prompt will appear automatically). - The app detects all monitors connected to your GPU and creates a Default profile for each.
- Select a monitor from the Monitors section.
- Click the + button in the Profiles section to create a new profile and give it a name.
- Adjust Brightness, Contrast, Gamma, and Digital Vibrance in the Profile Details section.
- Click Apply to apply the settings to the monitor immediately.
- Click Update to save changes to the profile without applying them.
- Click Revert to discard unsaved changes.
- Scroll to the Process Rules section at the bottom of the window.
- Click Browse... and select the target
.exefile. - Choose the Monitor and Profile to activate when that process runs.
- Click Add.
- When the process starts, the profile switches automatically. When it exits, all monitors revert to their Default profile.
- To delete a rule, click Remove on the corresponding row.
- Apply Settings on Start — re-applies the active profile for all monitors every time the app launches.
- Start with Windows — registers the app in Windows startup so it launches automatically on login.
- Select a profile and assign a key combination (Ctrl / Alt / Shift + key) in the Profile Details section.
- Click Update to save. The hotkey will activate that profile globally even when the app is minimized.
- Click the ? (About) button in the top-right corner and use the Reset button to wipe all data and start fresh.
If you find this useful, consider buying me a coffee ☕
