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
swaywm avatar

swaywm/sway

0
View on GitHub↗
17,054 stars·1,269 forks·C·MIT·39 viewsswaywm.org↗

Sway

Sway is a Wayland compositor and tiling window manager for Linux. It functions as a display server that manages window placement and input handling, organizing application windows into logical grids to maximize screen space.

The project is designed for a keyboard-driven workflow, allowing users to manage workspaces and window geometry without relying on a mouse. It provides a modular environment for desktop customization and includes translation layers to support legacy applications, facilitating the replacement of older window management systems.

The compositor utilizes hardware-accelerated rendering to manage window buffers and supports inter-process communication for remote control of system settings. Users define window behavior and shortcuts through a text-based configuration file that updates at runtime.

Features

  • Display Compositors - Functions as a Wayland display server managing window placement and input handling.
  • Tiling Window Managers - Arranges application windows into logical grids using the Wayland protocol for efficient workspace management.
  • Legacy Display Compatibility Layers - Supports legacy applications through integrated translation layers for seamless migration from older display architectures.
  • Compositors and Shells - i3-compatible Wayland compositor.
  • Window Managers - Wayland compositor designed as an i3 replacement.
  • Keyboard-Driven Workflows - Enables full control of the computing environment through keyboard-driven workspace and window management.
  • Legacy Compatibility Layers - Provides translation layers to support legacy applications, facilitating migration from older window management systems.
  • Hardware-Accelerated Rendering - Offloads window buffer composition to the GPU for efficient display rendering.
  • Desktop Environment Customizers - Provides a modular environment for customizing window layouts and system behaviors.
  • Input Event Dispatchers - Intercepts and routes hardware input signals to focused application surfaces based on workspace state.

Star history

Star history chart for swaywm/swayStar history chart for swaywm/sway

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.

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

Frequently asked questions

What does swaywm/sway do?

Sway is a Wayland compositor and tiling window manager for Linux. It functions as a display server that manages window placement and input handling, organizing application windows into logical grids to maximize screen space.

What are the main features of swaywm/sway?

The main features of swaywm/sway are: Display Compositors, Tiling Window Managers, Legacy Display Compatibility Layers, Compositors and Shells, Window Managers, Keyboard-Driven Workflows, Legacy Compatibility Layers, Hardware-Accelerated Rendering.

Which projects share features with swaywm/sway?

Projects with overlapping indexed features include: niri-wm/niri — Niri is a Wayland compositor and tiling window manager designed for Linux systems. It functions as a display server… hyprwm/hyprland — Hyprland is a Wayland compositor and tiling window manager for Linux systems. It functions as a display server… yalter/niri — Niri is a Wayland compositor that provides a desktop environment for Linux. Its primary purpose is to implement a… i3/i3 — i3 is a configurable tiling window manager for the X11 window system. It organizes application windows into… awesomewm/awesome — Awesome is a programmable tiling window manager for the X11 Window System. It functions as a dynamic window manager… qtile/qtile — Qtile is a programmable tiling window manager and compositor written and configured in Python. It organizes…

Projects sharing features with Sway

These projects share indexed features with Sway. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • niri-wm/niriniri-wm avatar

    niri-wm/niri

    20,069View on GitHub↗

    Niri is a Wayland compositor and tiling window manager designed for Linux systems. It functions as a display server that organizes application windows into a scrollable, column-based layout, providing a structured environment for managing graphical sessions, input routing, and hardware output. The project distinguishes itself through a declarative configuration engine that enables live-reloading of settings, allowing users to modify window rules, input bindings, and visual appearance without restarting the session. It features a physics-based animation system that uses spring-based curves to

    Rustrustsmithaytiling-window-manager
    View on GitHub↗20,069
  • hyprwm/hyprlandhyprwm avatar

    hyprwm/Hyprland

    36,388View on GitHub↗

    Hyprland is a Wayland compositor and tiling window manager for Linux systems. It functions as a display server protocol implementation that coordinates communication between hardware and graphical applications, while automatically organizing open windows into non-overlapping layouts to maximize screen space. The project distinguishes itself through a dynamic tiling engine that utilizes a binary space partitioning algorithm to calculate window geometry in real time. It provides a highly customizable workspace platform where users define system behavior and visual aesthetics through declarative

    C++compositorcpp26wayland
    View on GitHub↗36,388
  • 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
  • i3/i3i3 avatar

    i3/i3

    10,489View 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,489
  • Compare all 30 related projects→