All work →
Popup Piano Bar Songbook

Show Tunes, Sorted Three Ways

A sortable, mobile-friendly songbook built for a recurring popup piano bar. The system pulls from a Google Sheet the host already maintains, normalizes the data on the fly, and presents it through a lightweight interface styled to match the existing site. Deployed as an iframe embed on Squarespace, it replaced printed song lists with a live-updating catalog accessible from any phone in the room.

View the website
Challenge01

A popup piano bar needed a better way to manage its rotating catalog of show tunes and pop standards. Printed lists worked, but they couldn't keep pace with repertoire changes or provide attendees with an easy way to browse while waiting for their turn. The host wanted something she could update herself, and that would integrate seamlessly into her existing Squarespace site and match its delightfully garish pink aesthetic.

The songbook spreadsheet
Solution02

Google Sheets became the content management system. A Google Apps Script integration normalized incoming data, validated structure, and exposed it via a lightweight API. The front end was a simple sortable interface (title, year, show) deployed to Vercel and embedded as an iframe. Styling matched the existing site pixel for pixel. The host updates the sheet; the site reflects changes instantly. No backend. No database. No deployment pipeline for content changes.

The setup included guardrails: column headers had to stay consistent, rows followed a predictable format, and a one-page instruction doc covered the boundaries. Early on, a header rename broke the integration, but once that lesson was learned, the system has continued to run without intervention across at least half a dozen events.

The piano bar song list designed to match the wacky pink site
Admin Instructions for Popup Piano Bar Digital Songbook
Key Takeaways
01

Working with the tools people already trust

She didn't really want to learn a new CMS, but she already knew Google Sheets. Building around her existing tool removed adoption friction. The technical constraint became a feature.

02

Going paperless changed how the event actually worked

The pianist and host could coordinate repertoire changes up to the minute. Attendees could browse on their phones instead of crowding around paper song lists. Real-time collaboration became possible in ways the printed version never allowed.

03

Fragility is acceptable when the recovery path is clear

The integration could break if a column were renamed, but the fix was obvious, and the failure mode was immediate. Communicating the boundaries mattered more than eliminating every failure condition.

Explore More Projects
Featured
costQL banner: price GraphQL queries before they run
costQL

Priced Before It Runs

An offline pricing engine for GraphQL. Point it at your API once, then price any query before it runs. No server, no signup. Free and open source.

OneSource Web3 API Productization
OneSource Web3 API Productization

Productizing {Blockchain Data}

Pivoting to a service-first approach, this project focused on creating scalable APIs providing blockchain data, aligning with market demands and future growth.

Hero for the On-Chain Brokerage System
The On-Chain Brokerage System

The Innovation of Brokering On-Chain

A new approach to NFT brokerage built from the ground up for transparency and fun.