Nehir

May 30, 2026 · View on GitHub

A scrolling tiling window manager for macOS, built on the Niri column layout paradigm.

Nehir (Turkish for "river") — windows flow in columns, scrolling horizontally across your screen.

Features

  • Niri scrolling column layout — windows arranged in columns that scroll horizontally
  • Workspace management — multiple workspaces with hotkey switching
  • Window borders — configurable colored borders on the focused window
  • Workspace bar — per-monitor status bar showing workspace names and app icons
  • Focus follows mouse — optional hover focus
  • Multi-monitor support — seamless window management across displays
  • Overview mode — bird's-eye view of all windows
  • Command palette — fuzzy search for commands
  • App rules — per-application layout overrides
  • IPC — Unix socket for external control via nehirctl
  • TOML configuration — split config under ~/.config/nehir/

Install

swift build -c release
cp .build/release/Nehir /usr/local/bin/
cp .build/release/nehirctl /usr/local/bin/

Or use mise:

mise run install

Usage

# Run
Nehir

# CLI control (requires IPC enabled)
nehirctl focus left
nehirctl switch-workspace 2
nehirctl --help

Configuration

Nehir uses a split-file config layout under ~/.config/nehir/:

~/.config/nehir/
├── settings.toml      # core app behavior
├── hotkeys.toml       # all keybindings + modifier trigger
├── workspaces.toml    # workspace definitions
├── apprules.d/        # one file per app rule
│   ├── com-google-chrome.toml
│   └── pip-floating.toml.sample   # inactive sample
└── monitors.d/        # per-monitor overrides
    └── studio-display.toml

All files are watched for changes — edits are applied live without restarting.

See Configuration Principles for the design rationale.

Default Modifier

The default modifier key is ⌘⌥ (Cmd+Option). Change it in the Nehir menu → Settings → Hotkeys → Nehir Modifier.

Development

# Build (debug)
mise run build

# Build and run
mise run dev

# Release build
mise run build:release

# Run tests (requires Xcode)
mise run test

# Clean
mise run clean

Origin

Nehir is a highly opinionated fork of Hiro (formerly OmniWM), rebuilt around a single layout engine — Niri scrolling columns — with stripped-down controls and no backward-compatibility baggage.

The original project tried to accommodate a wide range of user requests; Nehir deliberately narrows the scope to do one thing well. We're deeply grateful to the original author for the foundation this builds on.

License

GPL-2.0-only