Ribbon
Scroll your windows instead of shrinking them
Features
- Horizontal Scrolling Window Strip
- Width Presets From Third to Full
- Stacks and Tabbed Columns
- Floating Windows and Float Rules
- Three-Finger Swipe Navigation
- One Strip per Display and Space
- Rebindable ⌃⌥ Shortcuts
- CLI and ribbon:// URL Scheme
- Text Config Synced With Settings
About
Ribbon is a scrolling window manager for Mac. Apps stay on one horizontal strip: a new window opens beside the one you are using, and the others keep the width you left them, with the row continuing past the edge of the screen. It works with SIP on and only asks for Accessibility permission.
Who It's For
Ribbon is for Mac users who like the niri/PaperWM model, where windows sit side by side on an endless row, but who want a paid, native app with SIP left on instead of a scripting setup. It suits people who are tired of tiling managers that squeeze every window smaller as more apps open: in Ribbon, opening another window never shrinks the ones already there.
How It Works
Each display gets one horizontal strip of columns. When you open a window, it slides in next to the one you're using. Each column keeps the width you gave it, and the row simply continues past the edge of the screen. ⌃⌥R cycles the focused column through preset widths (third, half, two-thirds and full width), and ⌃⌥F stretches it to full width. ⌃⌥→ and ⌃⌥← move focus along the strip without rearranging anything, ⌃⌥⇧ plus an arrow swaps a column with its neighbour, and ⌃⌥1–4 jumps straight to a column. ⌃⌥S stacks the focused window with its neighbour and ⌃⌥⇧S splits it back out; a stacked column can also be turned into tabs. ⌃⌥Space lifts a window off the strip to float, and per-app float rules handle apps that shouldn't tile. The default chords use Control-Option, with Vim and Option shortcut styles available and rebinding in Settings.
On a trackpad, a three-finger swipe slides the strip and focuses the column you land on. If you'd rather keep three-finger swipes for macOS, you can turn them off and use Option plus a two-finger scroll; on a mouse, hold Option and scroll. Each Space keeps its own strip, Mission Control works as before, and ⌃⌥N sends the focused window to the next screen. Ribbon moves windows through the Accessibility API. It has no kernel extension and doesn't inject anything into the Dock, so System Integrity Protection stays on. Settings are stored in ~/.config/ribbon/ribbon.toml, which the Settings window writes to while keeping any comments you add, and Ribbon can be driven from a CLI or the ribbon:// URL scheme.
Compared to Alternatives
Chain Your Mac is the closest comparison: another paid, closed-source app that puts windows on one endless scrolling strip, keeps SIP on, and asks only for Accessibility. Both have stacking, a CLI and a URL scheme. Ribbon is cheaper for one Mac ($17 after a $12 founding price for the first 10 licences, versus $19.99), and it also accepts Option + two-finger scroll alongside swipes. Chain Your Mac adds Raycast script commands. Compared to free, open-source scrolling managers such as Nehir or Defi, Ribbon trades source access for a menu-bar app with a Settings window that writes the same TOML config you can edit by hand.
Requirements
- macOS 14 Sonoma or later
- Apple silicon only; Intel Macs are not supported
- Accessibility permission only; SIP stays enabled
- Turn off Stage Manager, which the developer says "fights any window manager"
- Version 1.0.0 (launch release); one-time licences for 1, 3 or 5 Macs, with no free trial
Getting Started
Download Ribbon from meetribbon.app. There's no trial, but you can try every default shortcut on the live strip on the site's shortcuts page before buying. If macOS blocks the first launch, the setup page explains Gatekeeper's "Open Anyway" step. Grant Accessibility permission, turn off Stage Manager, and open a few apps to watch them line up on the strip, then use ⌃⌥R to cycle widths. Fine-tune settings in ~/.config/ribbon/ribbon.toml, and see the guides for gestures, multiple displays and troubleshooting.