Coffee Brew
Coffee Brew enhances the Coffee launcher with a modern, Spotlight-like interface and adds user-friendly features. It offers several color themes, a history view, the ability to pin favorite commands, and improved navigation and feedback within the launcher. The project is designed to be an opt-in enhancement that doesn't modify the core Coffee module.
Coffee Brew restyles the Coffee launcher with a modern, Spotlight-inspired look and adds quality-of-life features — without touching Coffee's own code.
Features
- Polished launcher styling with rounded corners, soft shadow, and a blurred backdrop.
- Six color themes: Espresso (dark brown), Latte (light cream), Mocha (chocolate), Affogato (high-contrast monochrome), Blue Mountain (midnight blue), and Honey (lemon amber).
- Recent history view when the query is empty, backed by
localStorage. - Pin / unpin individual commands as favorites.
- First result is auto-focused as you type, so Enter opens the closest match immediately.
- Arrow keys wrap around at the top and bottom of the result list.
- "No results." placeholder for zero-match queries, with Enter neutralized so an empty query never reloads the page.
- Result count and keyboard shortcut hints (
↑ ↓ Enter Esc) in the footer. - Clickable coffee-bean icon in the input area that opens the settings page.
- Themed custom scrollbar for long result lists; launcher height caps at
90vhso it never runs off the viewport. - Optional short "click" sound when the launcher opens, synthesized with the Web Audio API (no asset file is loaded). Disabled by default.
How it works
Coffee Brew layers on top of Coffee via hook_library_info_alter() and a MutationObserver, so upgrading Coffee itself remains safe. All visible behavior is opt-in through a single settings page at /admin/config/user-interface/coffee-brew.
Themes
Themes are pure CSS custom properties, so you can add your own by appending a body.coffee-theme-<name> block to css/themes.css.
Related projects
- Coffee — required dependency.