Undersong — A Room for Lyrics
Undersong is a distraction-free writing room for song lyrics. Beneath every song there’s a quieter one — a line that keeps returning, asking to be written — and this is a place to catch it.
Features
- A line-by-line writing surface organized into song sections (verse, chorus, bridge…). Tap a section name to change its type; Enter makes a new line and Backspace on an empty line removes it. Word and line stats sit alongside, and any song exports to plain text.
- Sparks — over 500 writing prompts grouped by craft and subject to get you unstuck. You can also generate your own spark groups from any text files; a streaming web worker extracts and scores the best candidate lines.
- A rhyme panel for finding rhymes without leaving the page.
- Organize songs into albums: create, rename, duplicate, delete and move songs between them. Whole workspaces or single albums save and load as files, with a choice to merge or replace.
- Everything stays on your device — nothing is sent to a server. Multiple color schemes with accent cycling.
- Vanilla JavaScript, no frameworks.
Built with AI
This app was built with AI. I made it together with Claude, Anthropic’s AI assistant, using Claude Code, a tool that works directly in the terminal. I described the writing experience I wanted — the sections, sparks, rhymes and albums. Claude wrote the code, and I directed the design, made the product decisions and tested everything in the browser. Commits that Claude wrote are marked as co-authored by Claude in the git history.