git404hub

what is awesome fr?

awesomewm/awesome — explained in plain English

Analysis updated 2026-05-18

6,882LuaAudience · developerComplexity · 3/5LicenseSetup · moderate

tl;dr

Awesome is a highly configurable tiling window manager for Linux, controlled entirely through a Lua configuration file with no graphical settings panel.

vibe map

mindmap
  root((awesome WM))
    What it does
      Manages window layouts
      Tiling and floating modes
      Keyboard driven
    Tech stack
      Lua config
      C core
      X11
    Configuration
      rc.lua file
      Keybindings
      Widgets
    Use cases
      Linux desktop
      Custom layouts
      Status bar

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 make with this?

VIBE 1

Replace your desktop environment with a keyboard-driven tiling window manager for a faster, distraction-free workflow.

VIBE 2

Write Lua scripts to automatically arrange windows based on which application opens.

VIBE 3

Build a custom status bar with widgets showing CPU usage, battery level, or network stats.

what's the stack?

LuaCCMakeX11

how it stacks up fr

awesomewm/awesomelewis6991/gitsigns.nvimfolke/trouble.nvim
Stars6,8826,8196,783
LanguageLuaLuaLua
Setup difficultymoderatemoderatemoderate
Complexity3/52/52/5
Audiencedeveloperdeveloperdeveloper

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

how do i run it?

Difficulty · moderate time til it works · 1h+

Requires an X11 environment, you must configure .xinitrc or a display manager entry to launch it, then edit rc.lua before it is usable.

GPL v2 or later -- free to use and modify, changes must remain open source under the same license.

in plain english

Awesome is a window manager for the Linux desktop, specifically for the X window system. A window manager controls how application windows are displayed on screen: which ones overlap, how they tile, which keyboard shortcuts open or close things. Awesome is classified as a tiling window manager, meaning it arranges windows to fill the screen without overlapping, rather than letting you drag them around freely. What makes it different from most window managers is that its entire configuration is written in Lua, a lightweight scripting language. You write or edit a file called rc.lua to define your own keybindings, layouts, status bar widgets, and rules for how specific apps behave when they open. There is no graphical settings panel. Instead, everything is expressed as code, which means experienced users can make the environment behave exactly as they want, but the learning curve is steep for newcomers. Installing Awesome requires building it from source or using a package manager that supports it. Common Linux distributions like Arch Linux and Debian have packages available. After installation, you tell your display manager to launch Awesome, or add a line to your .xinitrc file to start it manually. The project is licensed under the GNU General Public License version 2 or later, which means it is free to use, modify, and share. Support channels include an IRC channel on OFTC, a Reddit community at r/awesomewm, and Stack Overflow. Bug reports go to GitHub issues, and code contributions are accepted via pull requests. Documentation for the full API lives at awesomewm.org, covering everything from layout modules to widget APIs. This is a project for Linux users who want deep control over their desktop environment and are comfortable editing configuration files and reading technical documentation.

prompts (copy fr)

prompt 1
I just installed awesome window manager. Help me edit ~/.config/awesome/rc.lua to add a keybinding that opens a terminal with Super+Enter.
prompt 2
Explain how awesome window manager layouts work in Lua. How do I switch between tiling and floating mode for a specific window?
prompt 3
I want to add a battery level widget to the awesome window manager status bar. What Lua code do I add to rc.lua?

Frequently asked questions

what is awesome fr?

Awesome is a highly configurable tiling window manager for Linux, controlled entirely through a Lua configuration file with no graphical settings panel.

What language is awesome written in?

Mainly Lua. The stack also includes Lua, C, CMake.

What license does awesome use?

GPL v2 or later -- free to use and modify, changes must remain open source under the same license.

How hard is awesome to set up?

Setup difficulty is rated moderate, with roughly 1h+ to a first successful run.

Who is awesome for?

Mainly developer.

peek the repo → explain another one

This repo across BitVibe Labs

double-check against the repo, no cap.