awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
baskerville avatar

baskerville/bspwm

0
View on GitHub↗

Bspwm

bspwm is an X11 tiling window manager that organizes application windows into non-overlapping rectangular tiles using binary space partitioning. It treats the screen as a tree of rectangular regions to automatically manage window placement and is compliant with Extended Window Manager Hints.

The project is distinguished by a socket-based window controller, which allows layout changes and configuration settings to be updated via a communication socket rather than through a built-in configuration file.

It provides independent window tree management for each detected monitor, treating every display as a distinct desktop container. The layout engine partitions screen real estate using split types and ratios, utilizing node-based insertion to place new windows into the hierarchy.

The system maintains compatibility with Xinerama, RandR, and ICCCM protocols to ensure integration with standard system tools.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Features

  • Tiling Window Managers - A window manager for X11 that organizes application windows into non-overlapping rectangular tiles using binary space partitioning.
  • Binary - Uses a binary space partitioning tree to automatically organize application windows into non-overlapping rectangular tiles.
  • Multi-Monitor Workspace Managers - Manages independent window trees and desktops across several physical displays.
  • Per-Monitor Workspace Stacks - Maintains independent window tree structures and workspace stacks for each detected physical monitor.
  • Binary Tree Layout Engines - Organizes windows as leaves of a binary tree to partition the screen into rectangular regions using split types and ratios.
  • Binary - Treats the screen as a tree of rectangular regions to automatically manage window placement.
  • Socket-Based Configuration - Provides a dedicated communication socket for updating layout changes and configuration settings in real time.
  • Socket-Based Window Controllers - Updates window layouts and configuration settings via a communication socket instead of a built-in config file.
  • X11 Protocol Implementations - Implements X11 protocols including RandR, Xinerama, EWMH, and ICCCM to ensure compatibility with system tools.
  • Dynamic Layout Engines - Allows changing window arrangements and system configurations in real time via a socket-based control engine.
  • Binary Space Partitioning - Arranges windows using a binary tree structure to split screen regions into precise rectangular areas.
  • Window Managers - Implements Extended Window Manager Hints (EWMH) to ensure compatibility with system pagers and task switchers.
  • Dynamic Window Insertion - Determines how new windows are placed into the layout tree using predefined insertion modes.
  • Desktop Screen Partitioning - Divides available screen real estate into smaller segments using split types and ratios defined within the binary tree.
  • Desktop Environment Components - Provides the core window management component for a customized X11-based Linux desktop environment.
  • Node-Based Layout Insertion - Places new windows into the layout hierarchy using specific split modes and coordinate-based insertion points.
  • Window Managers - Tiling window manager using a binary tree layout.
8,332 stars·440 forks·C·BSD-2-Clause·42 views

Star history

Star history chart for baskerville/bspwmStar history chart for baskerville/bspwm

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

Frequently asked questions

What does baskerville/bspwm do?

bspwm is an X11 tiling window manager that organizes application windows into non-overlapping rectangular tiles using binary space partitioning. It treats the screen as a tree of rectangular regions to automatically manage window placement and is compliant with Extended Window Manager Hints.

What are the main features of baskerville/bspwm?

The main features of baskerville/bspwm are: Tiling Window Managers, Binary, Multi-Monitor Workspace Managers, Per-Monitor Workspace Stacks, Binary Tree Layout Engines, Socket-Based Configuration, Socket-Based Window Controllers, X11 Protocol Implementations.

Which projects share features with baskerville/bspwm?

Projects with overlapping indexed features include: yalter/niri — Niri is a Wayland compositor that provides a desktop environment for Linux. Its primary purpose is to implement a… paperwm/paperwm — PaperWM is a tiling window manager and multi-monitor workspace manager implemented as a GNOME Shell extension. It… i3/i3 — i3 is a configurable tiling window manager for the X11 window system. It organizes application windows into… ianyh/amethyst — Amethyst is a tiling window manager for macOS designed to automate the arrangement of application windows. It… airblader/i3 — i3 is an X11 tiling window manager for Linux that organizes application windows into a non-overlapping grid to… awesomewm/awesome — Awesome is a programmable tiling window manager for the X11 Window System. It functions as a dynamic window manager…

Projects sharing features with Bspwm

These projects share indexed features with Bspwm. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • yalter/niriYaLTeR avatar

    YaLTeR/niri

    25,282View on GitHub↗

    Niri is a Wayland compositor that provides a desktop environment for Linux. Its primary purpose is to implement a scrollable tiling window management system, which organizes application windows in a non-overlapping layout that allows horizontal scrolling to access content beyond the screen edge. The compositor features multi-monitor workspace coordination, managing window arrangements and fractional scaling across displays with different resolutions and pixel densities. It supports a dynamic workspace organization model where independent vertical workspace stacks are maintained per monitor.

    Rust
    View on GitHub↗25,282
  • paperwm/paperwmpaperwm avatar

    paperwm/PaperWM

    4,374View on GitHub↗

    PaperWM is a tiling window manager and multi-monitor workspace manager implemented as a GNOME Shell extension. It organizes application windows into a non-overlapping, scrollable horizontal tiling layout, allowing users to manage more applications than can fit on a single screen. The system is distinguished by its scrollable-viewport tiling, which allows navigation through a sequence of windows via keyboard shortcuts and touchpad gestures. It also features a multi-monitor workspace organization model that assigns independent tiling instances to each physical display while synchronizing them t

    JavaScript
    View on GitHub↗4,374
  • i3/i3i3 avatar

    i3/i3

    10,615View on GitHub↗

    i3 is a configurable tiling window manager for the X11 window system. It organizes application windows into non-overlapping tiles to maximize screen real estate, utilizing a dynamic layout engine that removes the need for manual positioning or resizing. The system is designed for keyboard-driven desktop workflows, where window organization and behavior are defined through a plain text configuration file. It enables X11 desktop customization by allowing users to programmatically define layouts and keybindings. The manager provides inter-process communication via a Unix domain socket, allowing

    C
    View on GitHub↗10,615
  • ianyh/amethystianyh avatar

    ianyh/Amethyst

    16,315View on GitHub↗

    Amethyst is a tiling window manager for macOS designed to automate the arrangement of application windows. It functions as a productivity utility that organizes windows into non-overlapping layouts, allowing users to manage their desktop environment through keyboard-driven controls rather than manual mouse interaction. The application distinguishes itself by providing a state-machine engine that calculates window geometry based on user-defined tiling patterns. It maintains an accurate representation of the desktop by monitoring system-level notifications for window events, enabling it to auto

    Swiftmacmacoswindow-manager
    View on GitHub↗16,315
  • Compare all 30 related projects→