mangowm / mango
Practical and Powerful wayland compositor (dwm but wayland)
github.com/mangowm/mangoIndexed at a217252Up to date with upstream
What is mango?
mango is a Wayland compositor for managing windows and desktop input on Wayland systems. It extends the dwl approach with tags, configurable layouts, animations, window effects, Xwayland support, and IPC. The project is primarily written in C, with C++ also used in the source tree.
Written by a model from the README and the source
80 files and 1,290 symbols in 4 modules, led by C++ (33 files) and C (4).
Code health
This codebase scores 3.1 out of 10 for code health, which we rate at risk. It also scores maintainability 6.9 and static performance 10.0 out of 10. The three are scored separately and never blended into one number. Risk is concentrated, as it usually is: 10 of 80 files are git hotspots, and they average 2.4 — which is where the fixes pay off most.
Use mangowm/mango in your agent
Point Claude Code, Cursor, Codex or VS Code at this repository. Your agent gets the index this page is built from: cited answers, callers, history and health for any file.
- 1.In Claude, open Customize → Connectors, click +, then Add custom connector. On a Team or Enterprise plan an owner adds it first under Organization settings → Connectors.
- 2.Paste the server URL below as the Remote MCP server URL, then click Add.
- 3.Click Connect. A Repowise sign-in window opens. Approve access.
- 4.Repowise's tools are now available in your Claude chats.
Connect with one click. Sign in with Repowise (OAuth), no API key to copy. Works in Claude on the web, desktop, and mobile.
Docshttps://api.repowise.dev/mcp/mangowm/mango
This repo is public, so anyone with a Repowise account and an API key can connect.
Try asking
- get_overview()
- get_answer("how is mango put together?")
- get_why("why is mango structured this way?")
Explore mango
- DocumentationModule-by-module documentation, 147 pages.
- ArchitectureDependency graph, layers and third-party dependencies.
- Code healthEvery file's score and the findings behind it.
- CommitsEach commit's effect on code health.
- OverviewEverything else the index found: contributors, decisions, what changed this week.
Key features of mango
- mango supports Xwayland for running X11 applications.
- mango provides independent layouts for tags instead of workspaces.
- mango includes scroller, master-stack, monocle, dwindle, and grid layouts.
- mango supports window animations for opening, moving, closing, tag transitions, and layer surfaces.
- mango provides blur, shadows, corner radius, and opacity through scenefx.
- mango supports IPC and hot-reloading configuration without restarting.
How mangowm/mango works
mango starts in src/mango.c, which provides the compositor's central implementation and connects window management with Wayland behavior. Configuration parsing is handled by src/config/parse_config.h, where settings and keybinding-related configuration enter the system. src/dispatch/bind_define.h defines dispatch and binding behavior for actions triggered by input. Layout behavior is implemented in src/layout/horizontal.h, while src/animation/client.h handles client window animations. The compositor produces managed Wayland windows with layouts, transitions, effects, and external control through IPC.
The codebase has 80 files and 1,290 symbols in 4 modules, led by C++, C and Python. Code health is 3.1 out of 10, rated at risk.
Getting started with mango
- Install mango on Arch Linux with the Arch User Repository package.
yay -S mangowm-git
Commands copied from the README
mangowm/mango FAQ
What is mango?
mango is a Wayland compositor for managing windows and desktop input. mango adds configurable layouts, tags, animations, effects, Xwayland support, and IPC.
How does mango work?
mango accepts Wayland and input configuration through its compositor core, applies dispatch, layout, and animation logic, and presents managed windows. Its source includes src/mango.c, src/config/parse_config.h, src/dispatch/bind_define.h, src/layout/horizontal.h, and src/animation/client.h.
How do I install mango?
mango can be installed on Arch Linux with the mangowm-git package. The command is yay -S mangowm-git.
What language is mango written in?
mango is primarily written in C. The repository also includes C++, Python, and shell files.
How is the mango code organized?
mango's main source is in src, documentation is in docs, automation files are in .github, and the repository also includes root files and the mmsg module. src/mango.c is a central implementation file.
Who is mango for?
mango is for people who want a Wayland compositor with tags, configurable layouts, animations, window effects, Xwayland support, and IPC for daily desktop workflows.
The summary, features and answers on this page are written by a model from the README and the source, and refreshed with each index.
About this page
Get a page like this for your own codebase
Repowise built this map of mangowm/mango from its source and git history. It parses every symbol, draws the dependency graph, scores each file's health from complexity, duplication, coverage and churn, finds hotspots and owners in the history, and writes documentation for every module. Your coding agent reads the same index over MCP, so its answers cite real files.
Prefer local? pip install repowise && repowise init indexes your own checkout, no account needed.
Maintain mangowm/mango?
Claim this page, add a badge to the README, or re-index it.
Claim this page
Sign in with GitHub and we check that you are an admin or maintainer of mangowm/mango. Then add a badge to the README that links readers here.
Add a badge to your README
Every badge is public, cached, and updates on its own after every index. Nothing to install.
Repowise badge
Links to this page, with no score on it. Adding it also re-indexes the repo every week.
[](https://repowise.dev/repo/mangowm/mango?src=badge_wiki)Code health badge
The repo's health score out of 10, from the latest index.
[](https://repowise.dev/repo/mangowm/mango?src=badge_health)Code health card
A larger card with the score, its change since the last index, and when it was measured. The HTML version follows the reader's light or dark theme.
[](https://repowise.dev/repo/mangowm/mango?src=badge_card)