Do what you loveeasier.faster.better.
OmniWM brings the Hyprland and Niri experience to macOS — scrolling columns, BSP tiling, a built-in Ghostty quake terminal, a unified command palette, and full IPC/CLI automation, with display-synced animations that feel native because they are.
v0.7.3 · macOS 26+ (Tahoe) · Apple Silicon · GPL-2.0 · Free forever
Scrolling columns
Niri layout
A scrolling strip of columns or rows, depending on your monitor’s orientation setting. Focus glides the camera along the strip. Swap windows inside a container, cycle its size through presets, or resize both axes with the mouse — the whole strip re-flows live under your hand.
Learn more →Swap, cycle, or free-resize on both axes at once — the strip re-flows live.
Dwindle BSP
Hyprland layout
Hyprland-style dwindle tiling: every new window bisects the focused tile along its wider axis, spiraling naturally — half, quarter, eighth. Tune split ratios, preselect where the next window lands, group tiles into tabs, and take any tile fullscreen and back with one key.
Learn more →Each window bisects the focused tile — ⌥⏎ takes any tile fullscreen and back.
Every workspace at once
Overview
Every window from every workspace flies into one searchable, zoomable view. Arrow around, send windows to other workspaces, merge them into columns, drag or close them — your whole layout is editable from above, then everything flies back to exactly where it belongs.
Learn more →Every workspace at once — zoom with the scroll wheel, then move and merge windows with your shortcuts.
Windows · menus · apps · files
Command palette
Search windows, accessible menu items, clipboard history, OmniWM commands, applications, and files behind one hotkey. Browse apps and recent files, narrow files by type, or type to search. In Windows mode, Enter focuses; Shift+Enter summons the window right next to you.
Learn more →Jump to any window on any workspace — or summon it to your side instead.
Ghostty built in
Quake terminal
A real terminal — Ghostty’s libghostty rendering inside OmniWM, not a wrapper around another app. One key drops it over any screen with tabs, splits, and an optional glass background — and it sticks: workspaces switch and layouts re-tile beneath it while it stays exactly where you left it.
Learn more →A real Ghostty terminal that floats above every workspace — the desktop changes beneath, it doesn’t move.
Two fingers, three, four
Trackpad gestures
Swipe with 2, 3, or 4 fingers to drive the Niri strip — Snap to Columns lands you on the nearest column, or switch to Momentum for free inertial glides with rubber-band edges. Opt in to workspace swipe and another gesture flips workspaces on the monitor under your cursor, one switch per swipe.
Learn more →Configured examples: two-finger scrolling in Snap or Momentum style, plus opt-in three-finger workspace switching. Choose finger counts and scroll style in Settings.
A per-display island
Workspace bar
A floating island on each display that fits the MacBook notch perfectly — the active workspace docks beside the notch while the rest line up across it. Emoji-friendly chips, live app icons with focus glow, hidden-app badges, scratchpad pills, and per-monitor everything.
Learn more →Split around the notch, pixel-perfect — the active workspace always docks on its left.
A sticky widget layer
Scratchpads
A floating layer above your tiles for the tools you keep reaching for — calculator, notes, music. Ten slots, each holding any number of windows, toggled with one key, restored exactly where they were — and the visible slot follows you across every workspace.
Learn more →A sticky floating layer above your tiles — toggled with your assigned shortcut, following you across workspaces.
CPU · GPU · memory · disk
System stats
A gauge on the workspace bar opens a live readout — CPU, GPU, memory, and disk each with its own meter, plus uptime, chip, and display info in one glass popup. Drive it from the bar, a hotkey, or omniwmctl on the command line — all three toggle the same popup.
Learn more →CPU, memory, GPU, disk, and uptime — one gauge on the island, one popup below it, hotkey- and CLI-driven.
Across displays
Move edge
Enable Move Window Across Monitor at Edge and your monitors become one big canvas. At the edge of a layout, the same Move keystroke carries the window onto the adjacent routed display — layouts on both sides adapt, and focus travels with it.
Learn more →With Move Window Across Monitor at Edge enabled, Move carries the window to the adjacent display and each layout makes room.
Script every move
The bundled omniwmctl speaks NDJSON over a local socket — query state, drive windows and workspaces, and subscribe to live events from scripts, Raycast, or anything else.
What switchers say
Coming from yabai, AeroSpace, Rectangle, or Amethyst? So were they — real words from real users, every quote linking to its GitHub source.
I've been through Aerospaces, Yabai, Rift, and now this… I recently tried Paneru and Komorebi, and nothing compares to what OmniWM is.
Animations are buttery smooth
after just getting a taste of how snappy/responsive it was, i refuse to re-enable PaperWM
your work is absolutely fantastic. I personally adore it. […] Immediately uninstalled aerospace and started using omni.
Given how early it is in the development process, this is undoubtedly the best tiling window manager for OSX.
I'm using OmniWM - coming from a Niri/Noctalia setup on Linux - for a few hours now and already fell in love with it. 😍
OmniWM is already becoming my favorite WM and is now my daily driver. I can see this becoming the go-to window manager for Mac users…
I have now switched to omniwm on multiple monitors full time and I love it.
I've been using OmniWM for a couple of weeks now and I love it! I am an absolute sucker for Niri on Linux and have been craving that experience elsewhere.
And a whole control panel more
One-click toggles live in the menu bar — each with a live animated preview explaining what it does.
Performance & trust
Built for people who came from Linux tiling and refuse to compromise.
Mac-native control
Accessibility, AppKit, and selected Apple private APIs work together as one purpose-built system.
Refresh-rate-aware
Animations pace themselves to your display — 60, 120, or 144 Hz.
SIP stays on
Official OmniWM releases do not require disabling System Integrity Protection.
Signed & notarized
Current official releases are Developer ID signed and Apple-notarized.
Free and open source
No subscriptions, paywalls, trials, or usage caps. Licensed GPL-2.0-only.
Install
macOS 26+ (Tahoe) on Apple Silicon.
Homebrew
brew install --cask omniwm
Official cask; the project tap is retired. Quit OmniWM, then upgrade with brew upgrade omniwm.
Nix
nix profile install nixpkgs#omniwm
Packaged in nixpkgs, with an official Home Manager module for launchd and declarative settings.
Direct download
Grab OmniWM-v0.7.3.zip from GitHub Releases, unzip, and drop OmniWM.app into /Applications.
Built by a community
Thank you to everyone who contributed to OmniWM. Your ideas and code made a real difference.
Contributors by employer
Contributors by education
All contributors
Omni sponsors
Thank you to our amazing supporters! Ranks reflect sponsorship order, not donation amounts.
Christopher2K#1
Aelte#2
captainpryce#3
sgrimee#4
aidansunbury#5
dwstevens#6
swilson2020#7
Jeff Windsor#8
Jason Martin#9
dagi3d#10
Aleksei Gurianov#11
Naoki Ikeguchi#13
Justin Miller#14
benhaotang#15
Chris M#16
marckeelingiv#17
Nader Akoury#18
Earl Gresh#19
Carson Full#20
ryoppippi#21
Álvaro Barchín#22
Marc Hendrichsen#23
b-allan-w#24
cafe3310#25
Jose Paez#26
Petar Shomov#27
Bitkey
BlueLabs
EPAM
Finanzguru
GitHub
Google
Liip
Luxor Labs
Nx
ReactSquad
Spotify
SSW Consulting
vhf
Viber
Assumption University of Thailand
Linnaeus University
NTU Singapore
Olin College of Engineering
SUSTech









































