Turn it on where you want order. Every other desktop and display stays exactly as you left it.
User guide · for Mac power users
github.com/biks2013-tools/tiler
01 · What it is
A tiling window manager that lives in your menu bar.
Tiler arranges the windows of a desktop so they share the screen with no overlap and no wasted space. Each new window splits the one you were working in, along its longer side (a dwindle layout, as in Hyprland).
It works on one desktop of one display at a time, and only where you switch it on. Your other Spaces, your other screens and full-screen apps are never touched.
You keep using native macOS Spaces and Mission Control. Tiler just keeps the desktop you chose in order.
02 · Who it's for
For Mac users who want order on some desktops, not all of them.
01
Keyboard-first people
Developers, writers, analysts who live in a few windows side by side and would rather press a key than drag a corner.
Focus, swap and resize without the mouse.
02
A tiled workspace, a free one
Tile your coding or research desktop; keep a loose desktop for mail, chat and the odd floating window.
Each desktop is a separate choice.
03
Several displays
Tile the laptop screen while the external monitor stays freeform, or the other way round.
Tiler never moves a window on a screen you didn't turn on.
Not for you if you want every window on every desktop tiled automatically, or virtual workspaces that replace macOS Spaces.
03 · Why it feels light
Simple on purpose: fewer moving parts, fewer surprises.
0%
CPU while you work. Tiler only wakes up when a window opens, closes or moves, and goes fully idle on desktops that aren't tiled.
Pollingnone: it reacts to window events
Keyboard interceptionnone: system hotkeys only
Virtual workspacesnone: native Spaces
PermissionsAccessibility only
Cost of one update≈ 1 ms
Size of the code~4,000 lines
Measured on macOS 27 with two tiled desktops. Inspired by HyprMac (~35,000 lines), minus its workspaces, keyboard tap and polling.
01
Get started.
Install with Homebrew, allow Accessibility once, then switch tiling on for the desktops you choose.
04 · Install
Two commands, one permission.
$ brew tap biks2013-tools/tiler
$ brew install --cask tiler
# update later: brew upgrade --cask tiler
No Homebrew? Download Tiler-0.8.2.zip or the .dmg from github.com/biks2013-tools/tiler/releases and drag Tiler to Applications.
SignedDeveloper ID, notarized by Apple
Runs onApple silicon and Intel
RequiresmacOS 14 Sonoma or later
Dock iconnone: menu bar only
First launch
macOS asks for Accessibility: System Settings › Privacy & Security › Accessibility › enable Tiler. That's the only permission: no Input Monitoring, no Screen Recording.
05 · Turn it on, turn it off
Tiling is a switch per desktop, per display.
01
Menu bar: click the Tiler icon on the screen you want and choose Tile This Desktop. It acts on the display whose menu bar you clicked.
02
Keyboard: press ⌃⌘P on the display you're working on (the one with the focused window).
03
Off: the same item or key again. Windows simply stay where they are; Tiler stops all work there.
Remembered across restarts and logins.
The icon is filled when the current desktop is tiled.
Full-screen Spaces can't be tiled.
Move or Resize Window (⌃⌘M) and Focus Follows Mouse live here too.
02
Everyday use.
Shortcuts for focus, swap, resize and layout; a cheat sheet one key away; keyboard moves for untiled windows; the mouse when it's quicker, and focus that can follow it.
06 · Keyboard
Every shortcut on one slide.
General · work everywhere
Tile or untile this desktop⌃⌘P
Show keyboard shortcuts⌃⌘/
Move or resize an untiled window⌃⌘M
Unminimize the app's windows⌥⌘M
Move around
Focus the neighbouring window⌃⌘+←→↑↓
Swap with the neighbour⌃⇧⌘+←→↑↓
Desktops · work everywhere
Move window to previous / next desktop⌃⌘,/.
Resize
Vertical divider left / right⌃⌘[/]
Horizontal divider up / down⌃⇧⌘[/]
Layout
Float or tile the window⌃⌘T
Flip split (side by side ↔ stacked)⌃⌘J
Mirror left ↔ right⌃⇧⌘J
Equalize every split⌃⌘E
Retile the desktop⌃⌘R
The General and Desktops shortcuts work everywhere; the rest exist only while a tiled desktop has focus, so your apps keep those keys elsewhere. Change any of them in Settings › Shortcuts.
07 · Cheat sheet
Forgot a key? Press ⌃⌘/
A translucent panel lists every shortcut, grouped, on the display you're working on. It also works from the menu: Keyboard Shortcuts.
It never takes focus, so the app underneath keeps your keyboard and selection.
It closes on Esc, a click anywhere, a desktop switch, or the same shortcut again. On an untiled desktop the tiling rows are dimmed.
08 · Move and resize
Untiled windows, by keyboard.
Press ⌃⌘M (or menu › Move or Resize Window) and the window you're in can be moved and sized with the keyboard, until you press Return or Esc.
It works on any desktop, for any window Tiler isn't tiling: a floating window, or every window on an untiled desktop. A tiled window gets a short note to float it first with ⌃⌘T.
The keys are only taken while the mode is on. Switching app or desktop, or a click, ends it too.
While the mode is on
Move 40 pt←→↑↓
Resize (right/down grow)⇧+←→↑↓
Fine steps of 8 pt⌥+arrows
Centre / fill the screenC/M
Done↩/esc/⌃⌘M
09 · Other desktops
Send a window to another desktop.
Press ⌃⌘. to carry the window you're in to the next desktop on its display, or ⌃⌘, to the previous one. You follow it there, and it keeps the focus.
It works from any desktop, tiled or not. A tiled desktop tiles the window when it arrives; a floating window stays floating, at its size and position. The desktop it left closes the gap.
Tiler uses your own Mission Control shortcut, Move left / right a space (System Settings › Keyboard › Keyboard Shortcuts), so keep it turned on.
Keys
Previous desktop⌃⌘,
Next desktop⌃⌘.
A short note instead, when
There is no desktop on that sideadd one
The neighbour is a full-screen appskip it
The window is a dialog or panelnot moved
10 · Mouse and floating
The mouse still works, and Tiler follows it.
01
Drag onto a tile
Drop a window on another tile and the two swap places. Drop it anywhere else and it snaps back into its tile.
02
Drag an edge
Resize a window by its edge and the split follows: the neighbour shrinks or grows to match, gaps stay even.
03
⌘⌥ + drag anywhere
Hold ⌘⌥ and drag from anywhere inside a window to move it, on any desktop; the app never sees the click. Drop a window on a tiled desktop and it joins the layout.
Float one window:⌃⌘T takes it out of the layout and centres it at 60 % of the screen. Press again to tile it. It keeps its size and position: across Tiler restarts, and when you float it again.
Floats on its own: dialogs, panels, non-resizable windows, and apps on the Always Float list (System Settings, Activity Monitor, Calculator by default).
11 · Focus follows mouse
Point at a window, and it's yours.
On a tiled desktop, rest the pointer on a window for a moment and it takes the keyboard. No click needed; just passing over a window does nothing.
It is off until you turn it on: menu › Focus Follows Mouse, or Settings › General › Focus, where the delay lives too.
Desktops Tiler doesn't tile behave exactly as before.
What it respects
Open menus and the app switcherfocus stays put
Popovers and panels on topthey win
Floating windows over tilesthe top one wins
Delay before focus moves50–1000 ms · 150
Cost while the mouse moves~0.15 % of a core
03
Make it yours.
Settings…, from the menu or by opening Tiler again. Every change is saved and applied at once.
12 · Settings
General and Layout: startup, focus, gaps.
General
Launch Tiler at login
Focus follows mouse and its delay
Accessibility status
How many desktops are tiled
Config file: Show in Finder, Reload, Restore Defaults
Layout
Gap between windows
Gap at the screen edges
Resize step per key press
Applied to every tiled desktop when you let go of the slider.
13 · Settings
Shortcuts and Apps: your keys, your exceptions.
Shortcuts
Click a shortcut, press the new keys
Delete clears it, Esc cancels
A key already used by another action is refused, with its name
Restore Defaults
Apps
Apps whose windows always float
+ picks a running app or one from Finder
− removes the selected app
14 · Good to know
The config file, a few limits, and how to leave.
01
One config file
Settings writes ~/Library/Application Support/Tiler/config.json. Prefer a text editor? Edit it, then Settings › General › Reload.
Every key is required. A mistake is shown in the menu and in Settings. After an upgrade, Add Missing Settings fills in only the new keys.
02
Known limits
Apps with a minimum size (Outlook needs 770 pt) can overlap their neighbour on a small screen.
If another tool owns a key (Rectangle, Hammerspoon), it wins: pick another key in Settings. Don't tile the same desktop with HyprMac.
03
Uninstall
brew uninstall --cask tiler removes the app and keeps your settings.
brew uninstall --zap --cask tiler also removes the config and the list of tiled desktops.
Try it today
Tile what you want. Leave the rest alone.
$ brew tap biks2013-tools/tiler
$ brew install --cask tiler
Source and releases github.com/biks2013-tools/tiler
This deck and the engineering deck biks2013-tools.github.io/tiler