Key Lock Notifier is a Windows application that displays elegant on-screen notifications whenever you toggle Caps Lock, Num Lock, or Scroll Lock keys. It provides visual feedback with customizable settings to enhance your typing experience.
- 💬 Real-time notifications for Caps Lock, Num Lock, and Scroll Lock state changes
- 🎨 Modern dark theme interface with blue accent colors
- ⚙️ Customizable settings to show/hide specific key notifications
- 🚀 System tray integration for easy access to settings and controls
- 🖥️ Windows startup option to run automatically when your computer starts
- 💤 Low resource usage runs silently in the background
| Caps Lock On | Num Lock Off | Settings Window |
|---|---|---|
![]() |
![]() |
- Windows operating system
- Python 3.6 or higher
- Required libraries: tkinter, PIL (Pillow), keyboard, ctypes
- Download the latest release from the Releases page
- Extract the ZIP file to a location of your choice
- Run
KeyLockNotifier.exeto start the application
- Clone the repository
git clone https://github.com/captainmgc/key-lock-notifier.git - Install the required dependencies
pip install -r requirements.txt - Run the application
python key-lock-notifier.py
- System Tray Icon: Once launched, the application runs in the system tray. Right-click on the icon to access the settings or exit the application.
- Settings: Configure which lock keys should trigger notifications and whether the application should start with Windows.
- Notifications: When you press Caps Lock, Num Lock, or Scroll Lock, a notification will appear on your screen showing the current state (ON/OFF).
The application stores its configuration in a JSON file located at %USERPROFILE%\key_lock_notifier_config.json. You can manually edit this file if needed, but it's recommended to use the settings interface.
{
"show_caps_lock": true,
"show_num_lock": true,
"show_scroll_lock": true,
"start_with_windows": false,
"theme": "blue_dark"
}To build the executable:
-
Install PyInstaller
pip install pyinstaller -
Build the executable
pyinstaller --onefile --windowed --icon=images/tray_icon.ico --add-data "images;images" key-lock-notifier.py
Contributions are welcome! Feel free to fork the repository and submit pull requests for any improvements or bug fixes.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature) - Commit your Changes (
git commit -m 'Add some AmazingFeature') - Push to the Branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- Created by captainmgc
- Special thanks to all contributors and testers
If you have any questions or suggestions, feel free to open an issue on GitHub or contact me directly through my GitHub profile.
Made with ❤️ by captainmgc


