Skip to content

niamleeson/WheelSwitcher

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

WheelSwitcher

A macOS Cmd+Tab replacement that shows a circular wheel of applications.

Features

  • Circular wheel UI replaces the default Cmd+Tab app switcher
  • Pin apps to specific wheel positions with customizable key bindings
  • Single key press to instantly switch to a bound app
  • Cmd+Tab cycling through wheel apps
  • "All Apps" mode that auto-sizes the wheel to fit all running apps
  • Settings UI with visual wheel preview and drag-to-slot configuration
  • Configurable wheel diameter, icon size, and slot count
  • Open at cursor or screen center
  • Dark overlay toggle
  • Custom icon support per app
  • Hide/show app name labels
  • Menu bar tray icon

Requirements

  • macOS 13.0 (Ventura) or later
  • Accessibility permission (required for Cmd+Tab interception)

Build & Run

# Clone the repo
git clone https://github.com/niamleeson/wheelswitcher.git
cd wheelswitcher

# Build and install to /Applications
chmod +x build.sh
./build.sh

# Run
open /Applications/WheelSwitcher.app

On first launch, macOS will ask for Accessibility permission:

  1. Go to System Settings > Privacy & Security > Accessibility
  2. Enable WheelSwitcher
  3. Restart the app

The permission persists across rebuilds as long as you run from /Applications/.

Usage

Action Behavior
Cmd+Tab Open the wheel
Cmd+Tab+Tab... Cycle through apps on the wheel
Release Cmd Switch to the highlighted app
Press bound key (e.g. J) Instantly switch to that app
Mouse hover + click Switch to the hovered app
Click "All Apps" Show all running apps on the wheel
Escape / click outside Dismiss without switching

Configuration

Click the menu bar icon (the symbol that looks like command+tab) and select Settings to configure:

  • Left pane: Add, remove, and select pinned apps
  • Right pane: Visual wheel preview with drag-to-slot positioning
  • Bottom bar: Wheel diameter, icon size, slot count, and toggle options

Settings are saved to ~/Library/Application Support/WheelSwitcher/config.json.

Build from Source (without the script)

swift build -c release

The binary will be at .build/release/WheelSwitcher.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors