OPEN SOURCE  ·  GPL-3.0

Tile every window.
Automatically.

Shellwright runs silently in the background and tiles all your windows as they open — no setup, no dragging. Pure keyboard control, smooth animations, and a clean TOML config.

Download for Windows View on GitHub

Free  ·  No UI  ·  No data collected  ·  Written in Rust

shellwright — fibonacci layout — workspace 1
Terminal — Active
VS Code
Browser

Everything you need.
Nothing you don't.

No bloat, no config wizard, no Electron. A fast Rust binary that does one thing exceptionally well.

Automatic tiling

Every window that opens gets tiled immediately. No dragging, no snapping. Shellwright manages layout so you never touch the mouse.

Six layout algorithms

Fibonacci dwindle, BSP, Monocle, Columns, CenterMain, and Float. Switch any workspace to any layout on the fly with a single keystroke.

Multi-monitor support

Each monitor gets its own independent workspace stack. Move windows across monitors and switch workspaces per-display without any extra config.

Fully keyboard-driven

Focus, move, float, fullscreen, switch workspaces — everything is a keybinding. Every action is remappable in TOML with any modifier combination.

Smooth animations

Windows ease into place with a configurable easing animation. Duration and frame count are tunable — go snappy at 30 ms or buttery at 150 ms.

TOML config + hot reload

One human-readable config file for gaps, borders, animations, workspaces, float rules, and keybindings. Reload without restarting with Alt+Shift+R.

Pick your algorithm.
Switch anytime.

Every workspace can run a different layout. Switch mid-session with a keystroke — no restart, no drag.

Default

Fibonacci

Dwindle spiral — the first window takes half the screen, each new window halves the remaining space alternating H/V.

BSP

Binary space partition — the screen is recursively halved, giving each window its own clean region.

Monocle

All windows stacked full-screen. Switch focus to raise the top window — great for reading or presentations.

Columns

Fixed number of equal-width vertical columns. Set the count with set_layout:columns:N.

CenterMain

Ultrawide three-column layout — 50% centre, 25% left, 25% right. Ideal for games or apps that need to stay centred.

Float

All windows unmanaged — move and resize freely. Toggle individual windows in any other layout with Alt+Shift+Space.

One file.
Live reload.

Everything lives in %APPDATA%\shellwright\config.toml. A default is created on first run. Press Alt+Shift+R to apply changes without restarting.

  • Pixel-perfect gaps and border width
  • Active and inactive border colours
  • Smooth animation duration and frame count
  • Float rules by window class, title, or exe
  • Fully remappable keybindings with any modifier
  • YASB / external bar padding offsets
config.toml
# Appearance
gap             = 8
border_width    = 2
border_active   = "#38bdf8"
border_inactive = "#1e2235"
border_radius   = 8
default_layout  = "fibonacci"

# Animations
[animations]
enabled     = true
duration_ms = 80
frames      = 6

# Float a window by exe name
[[float_rules]]
exe = "steam.exe"

# Custom keybinding
[[keybindings]]
modifiers = ["alt", "shift"]
key       = "f"
action    = "toggle_fullscreen"

Built for the keyboard.
Remappable by design.

Sensible defaults out of the box. Every binding is overridable in TOML — any modifier, any key.

FOCUS & MOVEMENT
Alt + HFocus previous window
Alt + LFocus next window
Alt + Shift + HMove window left
Alt + Shift + LMove window right
Alt + Shift + QClose focused window
Alt + FToggle fullscreen
Alt + Shift + SpaceToggle float / tiled
Alt + 1 … 9Switch to workspace 1–9
Alt + Shift + 1 … 9Move window to workspace
LAYOUTS & SYSTEM
Alt + GFibonacci layout
Alt + TBSP layout
Alt + MMonocle layout
Alt + CColumns (2) layout
Alt + UCenterMain layout
Alt + Shift + RReload config
Alt + Shift + EQuit Shellwright

Pick your platform.

Windows is fully supported today. macOS and Linux backends are actively in progress.

Windows

Windows 10 / 11  ·  64-bit

Download

macOS

In progress

Coming soon

Linux

In progress (Wayland / Smithay)

Coming soon
FOR TERMINAL PEOPLE

Build from source
in seconds.

Shellwright has zero runtime dependencies beyond the Windows APIs. You need only the stable Rust toolchain.

  • Rust stable 1.75+
  • Register as a startup app with one command
  • Config is created automatically on first run
PowerShell
# Clone and build
git clone https://github.com/code-lodge/shellwright
cd shellwright
cargo build --release

# Run
.\target\release\window-manager.exe

# Register at startup (optional)
.\target\release\window-manager.exe autostart-register