A Windows application built with Wails that lets you lock your microphone volume at a specified level, preventing unwanted volume changes during important calls or recordings.
- Lock microphone volume at any desired level
- System tray integration for quick access
- Native Windows menu system
- Persistent settings across app restarts
- Run at Windows startup option
- Keyboard shortcuts for common actions
- Built using Wails and React for a native feel
- Windows operating system
- NirCmd utility installed (
nircmdc.exe
needed)
For development:
- Go 1.21 or later
- Node.js and npm
- Wails CLI (
go install github.com/wailsapp/wails/v2/cmd/wails@latest
)
- Download the latest release from the Releases page
- Place
nircmdc.exe
in the same directory as the application or have it installed globally (on the system) - Run the application
- Clone the repository:
git clone https://github.com/Xurify/Microphone-Volume-Lock
cd microphone-volume-lock
- Install frontend dependencies:
cd frontend
npm install
cd ..
- Run in development mode:
wails dev
To build the application:
wails build
The built executable will be in the build/bin
directory.
- Launch the application
- Use the slider to set your desired microphone volume
- Click "Lock Microphone Volume" to lock at the current level
- The application will continue running in the system tray when minimized
Ctrl+H
: Hide to system trayCtrl+Q
: Quit applicationCtrl+S
: Toggle Windows startup setting
Right-click the system tray icon for quick access to:
- Show/hide window
- Lock/unlock volume
- Quit application
main.go
: Application entry point and window configurationapp.go
: Core application logic and backend functionalityfrontend/
: React frontend codesrc/App.tsx
: Main application interfacesrc/style.css
: Application styling
build/
: Build artifacts and resourceswails.json
: Wails project configuration
Contributions are welcome! Please feel free to submit pull requests or create issues for bugs and feature requests.
This project is licensed under the MIT License - see the LICENSE file for details.