Rofi is a keyboard-driven application launcher and window switcher for X11 desktops. It functions as a scriptable command palette and a compatible emulator for dmenu, capable of reading options from standard input and returning a user selection to standard output.
The project is distinguished by a customizable window interface using a CSS-like theming system and a flexible box-model widget hierarchy. It features a recursive theme inheritance system and responsive styling that adapts based on screen dimensions and monitor identifiers.
The tool provides advanced text filtering using fuzzy, regex, and glob matching algorithms. Its capability surface covers window focus switching, local file browsing, SSH connection management, and the execution of custom shell scripts to generate dynamic selection menus.
Users can manage settings through modular configuration files and map specific keyboard shortcuts to application actions.