Skip to content

miracle-wm-org/miracle-wm

Repository files navigation

Website Β  Join Matrix

miracle-wm

miracle-wm is a hackable, stylish, and modern Wayland compositor built on Mir. It brings the keyboard-driven efficiency of i3/Sway to a richer, more extensible experience with smooth animations, a powerful WebAssembly plugin system, and a clean YAML configuration.

miracle in action

Features

  • Manual tiling β€” organize windows into horizontal, vertical, tabbed, or stacked layouts with full keyboard control
  • Floating windows β€” seamlessly mix floating and tiled windows in the same workspace
  • Smooth animations β€” window open/close, moves, resizes, and workspace transitions all animate out of the box
  • WebAssembly plugin system β€” extend and override core behavior without touching a line of C++
  • i3/Sway-compatible IPC β€” works with swaymsg, Waybar, and the rest of the ecosystem you already know
  • Hot-reload config β€” apply changes instantly with Meta+Shift+R, no restart required
  • Multi-monitor support β€” independent workspaces across outputs, fully configurable
  • Accessibility built in β€” magnifier, slow keys, sticky keys, and cursor configuration included

Plugins

Plugins run as sandboxed WebAssembly modules, so you get first-class extensibility with zero risk to compositor stability.

Write plugins in Rust (via the miracle-plugin crate) and hook into:

  • Window placement logic β€” put windows exactly where you want them
  • Input events β€” intercept keystrokes and pointer events before the compositor handles them
  • Animations β€” trigger custom animations with arbitrary timing at any lifecycle event
  • Workspace and output events β€” react to workspace creation, deletion, and switching
  • Configuration β€” read and extend the compositor's config at runtime

Plugins hot-reload when the configuration reloads, so your iteration loop is fast.

Getting Started

Installation instructions, build instructions, and a full roadmap live at:

wiki.miracle-wm.org

Plugin API documentation is at:

docs.miracle-wm.org

Community

Questions, ideas, and contributions are welcome. Find us on Matrix:

#miracle-wm:matrix.org