April 22, 2026

Your editor just dropped the beat

A Vompeccc Case Study: Spotify as Pure ICR in Emacs

Emacs turns into a Spotify remote; devs cheer, nitpick, meme

TLDR: A dev built a Spotify controller inside Emacs using a small “shim,” showing fast, type‑as‑you‑search control with no custom UI. Comments split between praise for the minimalist design and a plea for a simple “Back” button, reigniting jokes about Emacs doing everything.

Emacs, the famously do‑everything text editor, just pulled a power move: a tiny “shim” turns it into a keyboard‑only Spotify controller. The dev’s demo shows them hunting a J Dilla track by typing a few letters and narrowing results in real time—no custom app windows, just the editor’s built‑in completion magic. Cue the comment heat. One fan quotes the manifesto‑level thesis—“ICR” (instant, type‑as‑you‑search) isn’t a UI trick, it’s a core design—and declares Emacs a platform, not a program. Another voice keeps it real: love the content, but please, add a “go back” button when jumping to footnotes.

That’s the vibe: half victory lap for the 493‑line “shim” (the glue code that feeds search results, adds labels, and attaches actions), half polite “can we make it easier to read?”. Even with only a couple comments, the usual Emacs comedy hour arrives—“today Spotify, tomorrow coffee”—as skeptics ask why not just use the Spotify app, while keyboard die‑hards brag they’ll out‑speed any mouse. The takeaway? Fans see a proof that Emacs’s completion system is a programmable substrate, not just menus. Curious? Peep Emacs and the Spotify Web API to see what the fuss is about.

Key Points

  • The article demonstrates “spot,” an Emacs Spotify client built as a pure ICR application on VOMPECCC packages.
  • The codebase is about 1,100 lines, with ~635 lines for infrastructure and a 493-line shim integrating Consult, Marginalia, and Embark.
  • The app relies entirely on the Emacs completion substrate for UI—no custom lists, keymaps, or rendering are implemented.
  • Searches stream async results from the Spotify Web API into the minibuffer via Consult, rendered vertically with Vertico.
  • Consult’s async split style enables switching from remote search to local narrowing without additional API requests.

Hottest takes

"ICR is not merely a UI convenience but a structural property" — chiply
"a “go back” button when following a footnote would be a really welcome addition" — mplanchard
Made with <3 by @siedrix and @shesho from CDMX. Powered by Forge&Hive.