Install .NET
Download and install the .NET 10 Desktop Runtime for Windows. You do not need the full developer SDK.
Download .NET 10 ↗LazyWM is a fast, keyboard-driven tiling window manager made for Windows 11. It keeps your desktop organized while staying out of your way.
LazyWM runs on Windows 11 and requires the .NET 10 Desktop Runtime.
Download and install the .NET 10 Desktop Runtime for Windows. You do not need the full developer SDK.
Download .NET 10 ↗Download the latest LazyWM release and extract the archive to a permanent folder. Keep the included Config folder beside the executable.
Open the extracted folder and double-click lazywm.exe. LazyWM starts in the background and is controlled using its configured hotkeys.
.\lazywm.exe
Most daily actions use Alt as the leader key. Vim-style navigation and arrow-key alternatives are both supported.
Focus a window in any direction.
Move the active window through the layout.
Jump directly to a workspace.
Adjust the active layout split ratio.
Stack the windows in the active workspace or return to tiling.
Close LazyWM and restore managed windows to a visible state.
The core stays lightweight, while the details make a Windows desktop feel intentional.
New windows are placed into a balanced binary split layout, with configurable gaps and split ratios.
Move focus, windows, and whole workflows naturally across displays.
Group several windows into one tile and jump between them by number.
Find open apps and empty workspaces from a compact keyboard-first interface.
Keep track of focus with configurable color, width, opacity, and rounded corners.
Reload hotkeys and appearance settings without restarting your session.
Defaults live in Config/HotKeyConfig.toml. Every key combination can be changed.
| Action | Default | Config action |
|---|---|---|
| Open app switcher | Alt Shift Space | open_app_switcher |
| Focus left / down / up / right | Alt H/J/K/L | focus_* |
| Swap left / down / up / right | Alt Shift H/J/K/L | swap_* |
| Switch workspace | Alt 1…8 | switch_to_workspace |
| Move to workspace | Alt Shift 1…8 | move_to_workspace |
| Toggle stacked mode | Alt Shift S | toggle_stacked_mode |
| Pause window management | Alt P | toggle_paused_mode |
| Reload configuration | Alt Ctrl R | reload_configuration |
| Exit LazyWM | Alt Ctrl O | exit_application |
Each monitor has independent workspaces. Switch directly, move the focused window, or ask LazyWM to find the next free workspace automatically.
Stacked mode lets several applications share one tile. Cycle through the stack, reorder it, or jump to a position using configurable number keys.
Configuration is plain TOML stored in the Config folder next to the executable.
config.tomlLogging, animations, and mouse behavior.
HotKeyConfig.tomlCommands and application shortcuts.
WorkspaceConfig.tomlLayouts, gaps, and workspace defaults.
WorkspaceIndicatorConfig.tomlTaskbar indicator layout and colors.
WindowBorderConfig.tomlActive window border appearance.
AppSwitcherConfig.tomlSwitcher dimensions and styling.
FloatingRulesConfig.tomlPersistent tiled and floating app rules.
WorkspaceConfig.toml
Set workspace modes, inner and outer gaps, and the initial workspace for each monitor.
# Workspace layout and spacing
[workspace]
initial_workspace = 1
window_gap = 0
outer_gap = 4
default_mode = "tiled"
WorkspaceIndicatorConfig.toml
Control taskbar placement, visible workspaces, app icons, badges, and Windows accent color integration.
[workspace_indicator]
indicator_position = "center"
workspace_display_mode = "icons"
always_visible_workspaces = 8
show_app_switcher = "left"
native_windows_accent_color = true
WindowBorderConfig.toml
Choose a built-in scheme such as Gruvbox, Tokyo Night, Nordic, VS Code, Everforest, or Windows 10.
color_scheme = "gruvbox"
[window_border]
border_width = 4
rounded_borders = true
corner_radius = 12
native_windows_accent_color = false
HotKeyConfig.toml
Bind a shortcut to an executable. LazyWM focuses it wherever it is open, or launches it when needed.
[application_hotkeys]
"ALT+T" = "WindowsTerminal.exe"
"ALT+C" = "code.exe"
"ALT+E" = "explorer.exe"