A tiling window manager for X11 that organizes windows using a binary space partitioning tree.
bspwm is a tiling window manager for X11 that organizes application windows using a binary space partitioning (BSP) tree. It automatically divides screen space into non-overlapping rectangular regions, creating an efficient and organized desktop layout. Unlike traditional window managers, it separates window management from input handling, relying on external tools for keyboard and mouse interactions.
Advanced Linux/Unix users and developers who prefer a minimalist, keyboard-driven workflow and want fine-grained control over window layout via scripting and configuration.
Developers choose bspwm for its simplicity, predictability, and adherence to the Unix philosophy—it excels at window management without bloat, offering a clean, tree-based layout system that is highly configurable and scriptable.
A tiling window manager based on binary space partitioning
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Organizes windows in a full binary tree using binary space partitioning, ensuring predictable and non-overlapping tiling layouts that maximize screen usage.
Controlled via socket messages with bspc, allowing integration with shell scripts for automated window management and custom workflows, as shown in the bspwmrc configuration.
Delegates input handling to external tools like sxhkd, keeping the window manager minimal and focused solely on layout management, adhering to Unix philosophy.
Supports manual, automatic, and spiral modes for dynamic window placement, enabling tailored desktop arrangements without overlapping windows.
Requires configuring separate tools for input (e.g., sxhkd) and writing shell scripts for bspwmrc, which can be daunting and time-consuming for newcomers.
Lacks native keyboard or mouse bindings, necessitating external programs and adding dependency management overhead, as admitted in the README.
Only supports the X Window System with protocols like RandR and Xinerama, missing compatibility with Wayland and modern display technologies.