whatisgithub

What is waybar?

alexays/waybar — explained in plain English

Analysis updated 2026-06-24

11,272C++Audience · developerComplexity · 3/5LicenseSetup · moderate

In one sentence

Waybar is a highly configurable status bar for Linux desktops running Wayland, showing time, battery, network, audio, and workspace info in a bar at the top or bottom of your screen.

Mindmap

mindmap
  root((Waybar))
    What it does
      Status bar
      Wayland desktops
      Configurable modules
    Modules
      Clock and battery
      Network and audio
      Workspaces and MPD
    Supported desktops
      Sway Hyprland
      River Niri DWL
    Setup
      Package manager
      Config and CSS files
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Add a status bar to a Sway or Hyprland desktop showing battery level, clock, volume, and active workspace name.

USE CASE 2

Style the bar using a CSS file to match your desktop color scheme and font preferences.

USE CASE 3

Display window titles, Bluetooth status, CPU load, and disk usage in a persistent bar on your Wayland desktop.

What is it built with?

C++MesonNinjaCSS

How does it compare?

alexays/waybardyang886/game-cheats-managereosio/eos
Stars11,27211,24511,201
LanguageC++C++C++
Setup difficultymoderateeasyhard
Complexity3/51/55/5
Audiencedevelopergeneraldeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 30min

Requires a Wayland compositor like Sway or Hyprland, appearance and modules are configured through separate config and CSS files documented on the wiki.

Use and modify freely for any purpose, including commercial use, as long as you keep the copyright notice.

So what is it?

Waybar is a status bar application for Linux desktops that use the Wayland display protocol. A status bar sits at the top or bottom of your screen and shows information like the current time, battery level, network connection, volume, and which workspace or window is active. Waybar is designed to be highly configurable, so users can choose exactly which modules to display and how they should look. The bar integrates with several popular Wayland-based desktop environments and window managers, including Sway, Hyprland, River, Niri, and DWL. Each of these has its own way of managing windows and workspaces, and Waybar has specific support for each, showing relevant information like active workspace names, focused window titles, and keyboard layout. It also supports a system tray for application icons, Bluetooth status, Pulseaudio and Wireplumber audio controls, disk and memory usage, CPU load, temperature, and a music player daemon (MPD) module, among others. Installation is available through most major Linux distribution package managers, so most users will not need to build from source. For those who do want to build it, the README lists all required libraries and provides exact package manager commands for Ubuntu and Arch Linux. The build process uses Meson and Ninja, two standard build tools in the C++ ecosystem. Configuration and visual styling are handled through separate config and CSS files, with detailed documentation available on the project's wiki. The README does not reproduce those details directly. Contributions follow Google's C++ style guidelines. The project is MIT licensed, meaning it can be used and modified freely. The README warns that there is no official Waybar website, and releases are published only through the GitHub page.

Copy-paste prompts

Prompt 1
I'm running Sway on Linux. Walk me through installing Waybar and writing a basic config file with a clock, battery, and network module.
Prompt 2
How do I style Waybar with a custom CSS file to change background color, font, and module padding?
Prompt 3
I want to add an MPD music player module to Waybar. What goes in the config and how does it connect to MPD?
Prompt 4
My Waybar workspace module isn't showing correct names in Hyprland. How do I configure the hyprland/workspaces module?

Frequently asked questions

What is waybar?

Waybar is a highly configurable status bar for Linux desktops running Wayland, showing time, battery, network, audio, and workspace info in a bar at the top or bottom of your screen.

What language is waybar written in?

Mainly C++. The stack also includes C++, Meson, Ninja.

What license does waybar use?

Use and modify freely for any purpose, including commercial use, as long as you keep the copyright notice.

How hard is waybar to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is waybar for?

Mainly developer.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.