acsandmann/rift
Rusta tiling window manager for macos
cargo add riftFeatures
- Multiple layout styles
- Tiling (i3/sway-like)
- Binary Space Partitioning (bspwm-like)
- Master-stack (dwm-like)
- Scrolling columns (niri-style)
note
when using multiple displays and the scrolling layout, displays must be arranged in a vertical stack or windows may leak into other displays due to displays all existing in the same coordinate space - Stack (accordion)
- Menubar icon that opens a menu for switching workspaces, changing layouts, and accessing quick Rift controls
click to see the menu bar icon

- Save and restore layouts from the menu bar or CLI, with reusable layouts listed from a configurable folder
click to see the menu

- MacOS-style mission control that allows you to visually navigate between workspaces
click to see mission control

- Focus follows the mouse with auto raise
- Drag windows over one another to swap positions
- Performant animations (as seen in the demo)
- Switch to next/previous workspace with trackpad gestures (just like native macOS)
- Hot reloadable configuration
- Interop with third-party programs (ie Sketchybar)
- Requests can be made to rift via the cli or the mach port exposed (lua client here)
- Signals can be sent on startup, workspace switches, and when the windows within a workspace change. These signals can be sent via a command(cli) or through a mach connection
- Does not require disabling SIP
- Works with “Displays have separate Spaces” enabled (unlike all other major WMs)
Quick Start
Get up and running via the wiki:
Status
Rift is in active development but is still generally stable. There is no official release yet; expect ongoing changes.
Issues and PRs are very welcome.
Community
Join the Rift community on Matrix for discussion, support, and announcements: #rift:matrix.org
Motivation
Aerospace worked well for me, but I missed animations and the ability to use fullscreen on one display while working on the other. I also prefer leveraging private/undocumented APIs as they tend to be more reliable (due to the OS being built on them and all the public APIs) and performant. for more on why rift exists and what rift strives to do, see the manifesto
Credits
Rift began as a fork (and is licensed as such) of glide-wm but has since diverged significantly. It uses private APIs reverse engineered by yabai and other projects. It is not affiliated with glide-wm or yabai.