Rift Rift is a tiling window manager for macOS that focuses on performance and usability.
Features
Multiple layout styles Tiling (i3/sway-like) Binary Space Partitioning (bspwm-like)
Menubar icon that shows all of the workspaces and the layouts within click to see the menu bar icon
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
require disabling SIP Works with “Displays have separate Spaces” enabled (unlike all other major WMs)
Quick Start
Get up and running via the wiki:
config
quick start
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.
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 thrives 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.