BetterWM icon Free and open source · macOS 13 and later

Column tiling
that stays out of your way

BetterWM arranges windows in columns when you ask it to and leaves them alone when you don't. Hold ⌥ while dragging to drop a window into place, switch desktops instantly, and swipe between them like Spaces.

brew install --cask nanot1m/tap/betterwm

How it works

Two layouts cover everything: columns when you want to see windows side by side, a stack when one window at a time deserves the whole screen.

Set up macOS once

BetterWM takes over what Mission Control did. Three settings keep the two from fighting.

▣

Keep one native desktop

BetterWM's desktops replace macOS Spaces: they switch instantly, keep their layouts, and follow their display. Extra native desktops only add a second, slower set of places for windows to hide.

Mission Control: close every desktop but the first on each display. Keep "Displays have separate Spaces" on.System Settings › Desktop & Dock, Mission Control section
⌃

Free the Mission Control shortcuts

macOS claims ⌃← ⌃→ and ⌃1–⌃9 for its own desktops, so they never reach BetterWM until you turn them off.

System Settings › Keyboard › Keyboard Shortcuts › Mission Control: untick both Mission Control rows and Application windows.Keyboard Shortcuts › Mission Control with the Mission Control rows unticked
⇆

Hand over the gestures and F3

Turn off the Mission Control swipe and let BetterWM's three- or four-finger swipe move between its desktops instead. The Mission Control key then opens BetterWM's overview.

System Settings › Trackpad › More Gestures: Mission Control, App Exposé and Swipe between full-screen applications set to Off.Trackpad › More Gestures with Mission Control gestures off

Everything a tiling manager needs, nothing it doesn't

Windows you haven't tiled stay normal, freely movable windows. Tiling is a gesture, not a mode you live in.

▥

Columns and stacks

Columns across the screen, windows stacked within a column. Drag the gaps to resize, or switch a screen to a stacked deck.

⌥

⌥-drag to tile

Hold ⌥ during a drag and drop zones light up. Release to tile; a plain drag keeps the window floating where you put it.

⚡

Instant virtual desktops

Workspaces per macOS desktop, created on demand, reorderable, remembered across launches. No slide animation to wait for.

⛶

Overview

A Mission Control style overview of every desktop with live previews. Open it with the Mission Control key or a swipe up.

⇆

Swipe between desktops

Three- or four-finger swipes slide desktops in like Spaces, following your fingers, and reach fullscreen apps past the last one.

▤

A status bar that earns its space

Desktops with app icons, the focused window, now playing, sound, Wi-Fi, battery and a clock. Reorder or drop any widget.

◎

Focus ring

An outline that matches each window's corner radius, in one colour for tiled windows and another for floating ones.

↺

Layouts that survive

Grids, floating windows and the active desktop come back after a relaunch, an app restart or a display being unplugged.

🐈

And cats

Optional pixel cats roam the status bar, chase your cursor, nap, and leap through portals around the notch.

Keyboard first, when you want it

Every action has a global hotkey and a place in the menu. All bindings are editable in Settings, and a popup on ⌥⌘Space lists them when you forget.

All actions and defaults
Switch desktop ⌃1 … ⌃9
Send window to desktop ⌃⌥1 … ⌃⌥9
Move window ⌃⌥ ←↑↓→
Tile or untile ⌃⌥T
Retile the screen ⌃⌥R
Window switcher ⌥Tab
Overview F3

Install in a minute

Releases are signed with a Developer ID and notarized by Apple, so the app opens like any other.

Install with Homebrew

Or download the zip from the latest release and move the app to Applications.

brew install --cask nanot1m/tap/betterwm

Grant Accessibility

A welcome window links straight to the right System Settings pane. Screen Recording is optional and only adds window previews.

Hold ⌥ and drag a window

That's the whole tutorial; how it works shows the rest. The getting started guide covers the rest.