A lightweight macOS menu bar utility that provides a floating HUD overlay for quick input method switching.
- π Zero Permissions Required - Core functionality works immediately without setup.
- π― HUD-Style Overlay - A beautiful floating interface for quick switching.
- β‘ Native Performance - Built with AppKit and SwiftUI for optimal speed.
- π¨ Customizable - Configure which input methods to display.
- π± Menu Bar Integration - Lives quietly in your menu bar.
- πΎ Position Memory - Remembers the overlay position across launches.
- π Auto-Detection - Automatically discovers system input methods.
Miso can be installed via Homebrew or by manually downloading the latest release.
brew tap hewigovens/tap
brew install --cask misoDownload the latest release from the GitHub Releases page. Unzip the downloaded file and drag MISO.app to your Applications folder.
- macOS 12.0 (Monterey) or later.
- No additional permissions are required for the core functionality.
git clone https://github.com/hewigovens/miso.git
cd miso
open Miso.xcodeprojBuild and run in Xcode 16.0 or later.
- Launch MISO - Look for the π icon in your menu bar.
- Configure Methods - Click the menu bar icon, then select "Preferences..." to set up your input methods.
- Use Overlay - Click "Show/Hide Overlay" to toggle the floating HUD.
- Click an input method to switch immediately.
- Drag the overlay to reposition it anywhere on the screen.
- The position is automatically saved.
Open Preferences to:
- Refresh from system to detect new input methods.
- Open Input Sources Settings to configure system input methods.
- Toggle launch at login (requires macOS 13+).
MISO uses macOS's built-in Text Input Source APIs, which require no special permissions:
TISCopyCurrentKeyboardInputSource(): Detects the current input method.TISSelectInputSource(): Switches between input methods.TISCreateInputSourceList(): Discovers available methods.
This makes MISO a zero-permission utility that works immediately after installation.
MISO is built with modern Swift patterns:
- MVVM Architecture: For a clean separation of concerns.
- Protocol-Oriented Design: To ensure testable and maintainable code.
- SwiftUI + AppKit Hybrid: Combining the best of both frameworks.
- Reactive UI: For real-time updates with Combine.
See AGENTS.md for detailed technical documentation.
Contributions are welcome! Please feel free to submit a pull request.
- Clone the repository.
- Open
Miso.xcodeprojin Xcode 14.0 or later. - Build and run the project.
- Follow standard Swift naming conventions.
- Use the MVVM pattern for new features.
- Add protocol interfaces for services.
- Write unit tests for business logic.
This project is licensed under the MIT License - see the LICENSE file for details.
- Issues: GitHub Issues
- Discussions: GitHub Discussions
Made with β€οΈ for the macOS community

