Free for macOS 14 and later
Every window finds
its mooring.
Moorings is a menu bar app that puts windows where you want them. Shortcuts, drag snapping, tiling and saved layouts work on any display. On an ultrawide it also pins your apps to the edges.
Signed and notarized. Open source under Apache 2.0.
AppKit
Construct and manage a graphical, event-driven user interface for your macOS app.
Packing list
Passport and boarding pass
Laptop charger
Rain jacket
Sunscreen
Delta Your trip confirmation
GitHub [dcadolph/moorings] CI passed
Library Two holds are ready
# platform
GitHub CI passed on main
Deploys Rolling to prod at 11:00
Deploys Prod is done, change closed
% swift test
Building for debugging...
Executed 130 tests, with 0 failures
%
Works with what you already use
Your displays. Your habits.
Moorings starts with Rectangle's shortcuts, so your hands already know them. Every action is also a moorings:// link, so anything that opens a URL can run it.
Displays
- MacBook screenShortcuts, snap, organize
- External monitorShortcuts, snap, organize
- UltrawideAll of that, plus anchored apps
- Several at onceNext display, workspaces
Habits
- Rectangle shortcutsThe default
- Spectacle shortcutsOne menu choice
- Raycast and AlfredThrough links
- Stream DeckThrough links
- Extra mouse buttonsBound to actions
Snap by dragging
Drag to an edge. Let go.
Drag a window to an edge or a corner and a footprint shows where it will land. Let go and it snaps. Hold Option while dropping on an ultrawide strip and the app is anchored there.
Workspaces
Save a layout. Get it back.
Save where every window sits on every display under a name, then recall it from the menu, a shortcut or a link. Tie one to a set of displays and plugging into that desk recalls it.
On an ultrawide
Pin the edges. Work in the middle.
Anchor up to four apps to the sides of the screen, a top and a bottom slot on each side. Everything else stays in the open middle, the channel. Nothing is anchored until you pick an app, so a first start moves no window.
Four slots
Pick widths and heights from presets or steppers. A side with nothing anchored gives its space to the channel.
Green button
Click an anchored app's green button to lift it over the channel, and again to lower it. A free window's green button fills the channel.
Let it go
Drag an anchored window away and Moorings lets it go. Cast off this window lets one window cover the strips until it closes.

Themes
Twelve themes.
Every theme is a color set checked for contrast. Pick one and this whole page changes, including the screen above. The app uses the same names.
Get moorings
It moves windows. Nothing else.
Moorings needs Accessibility access to move windows. No account, no server, no analytics. Once a day it checks GitHub for a new release and offers it in the menu. Nothing installs on its own.