Rift
Rust-based tiling window manager with multiple layout styles
Features
- Multiple layout styles
- BSP and i3-style
- Hot-reloadable config
- Smooth animations
- Trackpad gestures
- No SIP disabling required
About
Modern Rust-based tiling WM with both i3-style and BSP layouts. Smooth animations, trackpad gestures, hot-reload config, no SIP disabling required.
Who It's For
Rift is for macOS users who want a modern, Rust-based tiling window manager with both BSP and i3-style layouts, smooth animations, and no SIP disabling requirement. If you've looked at yabai (requires partially disabling SIP for its full feature set) and AeroSpace (TOML config, i3 model only) and want an alternative that combines multiple layout algorithms with hot-reloadable config and trackpad gesture support, Rift offers a distinct option in the tiling WM space.
How It Works
Rift uses macOS's public Accessibility APIs — no SIP changes required. It supports two layout engines switchable per-workspace: BSP (binary space partitioning, windows recursively split the available area) and i3-style (master-stack with manual split control). Smooth animations play during window operations, and the config file hot-reloads without restarting the daemon — edit your config and changes apply immediately. Trackpad gestures provide a mouse-driven alternative to keyboard-only window manipulation. Workspace support gives each Space its own independent tiling layout.
Compared to Similar Tools
Compared to yabai (BSP-focused, SIP partial disable for full features), Rift requires no SIP changes and adds i3-style layout support alongside BSP, plus smooth animations. Compared to AeroSpace (i3-style, TOML config, no SIP), Rift adds BSP layout, animations, and trackpad gesture support. For users who want layout flexibility and a polished visual experience without SIP modifications, Rift is a compelling alternative to both. As a newer project, verify stability for your use case against the more established tools.
Requirements
- macOS version: check github.com/acsandmann/rift for requirements
- No SIP disabling required
- Accessibility permission required
- Free and open-source
Getting Started
Download from the GitHub releases page and launch. Grant Accessibility permission. Create a config file at the path documented in the README to define keybindings, layout defaults, and gap settings.