
famoe.ly (this is awkward)
Well this is awkward! u/theotherallen posts their fantastic https://www.famoely.org/ site a few hours before I popped on to share what I've been cooking up, Famoe.ly! You should check out that other post first if you haven't already. Their page includes a lot more data than the thing I've been working on. Theirs seems kinda like setlist.fm for moe., but really juiced up.
Famoe.ly though, my thing. A month ago I made a full length post on my blog about it, so I won't repeat the details. tldr: my Uncle Tim and I caught 02/05 and 02/6 at Higher Ground this year and I realized I was behind on their catalog. I wanted to make a "representative set list" for what I might expect to hear in August when I catch them in Indy/Cleveland/Chicago. So I started the proof of concept for famoe.ly.
It's all crowdsourced. The data is pulled from archive.org/setlist.fm (for gaps) and goes through a lot of automated cleaning before it's eventually generated into the pages on there. After a bunch of iterating I got something kinda nice that I was happy with. That's what you see on famoe.ly today. A few years of history imported into a database, and every night a systemd timer runs on my server which runs the ingestion and processing pipelines. It recalculates the stats when new shows are logged and it makes a new prediction. That's The Scorecard page. It's a running log of predictions leading up to the night of any given show.
Any time a new show is found on archive.org the scorecard page annotates that night by lighting up the little building icon and adding/bumping the count. You can go right to the live recordings that way (see screenshot)
The phish.in guys are looking to do a similar thing.
Getting the system up required cleaning a lot of data. So I made The Songbook and the Tape Measure pages to keep track of progress. I think the Songbook is pretty neat. It's a nice quick and easy way to see what's been playing recently, the most, etc. You can select different windows of time. I think it's neat :) The Tape Measure page came about because I'm looking to add "set composition" into the prediction page. That is, you wouldn't expect to see 6 30+ minute jams a single night, but you could reasonably expect a few of those, and then start looking at commonly segued songs, etc, etc. With enough of that data, and the recency data for stuff that was just played, in theory I could make a few branches of possible set lists for upcoming nights. That's the idea anyway. Right now it just shows you a lot of data and helps me with the cleaning.
The main page is just a proof of concept! I threw all that together in a very mono-repo kind of way. Very purpose-built. Not reproducible whatsoever.
What I've been doing since late July is making it open source and possible to use against any band you like that has all this information available in some way that's easy to ingest. That project is called setlistkit. With very little changes I was able to run it against UM (they're new to me and I needed to practice their catalog for the moe.mentum tour). After that it was pretty easy to extend it to pull in from the phish.in API. It's config file driven by "packs" and the reference implementation is the moe.-pack.
The open source version is mostly feature complete against the original famoe.ly proof of concept. But it's not fully generic yet, and the docs are still behind because I've been rushing to make it work so I could announce it here before the shows later this week. I just did a major re-arrangement of the initialization commands, etc. It's not 1.0 yet is what I mean 😄
- Beta build of the open source version for moe.
- Beta build of the open source version for Phish
setlistkit lets you theme the generated artifacts, I just haven't done that for the Phish build yet. Hence the naming snafu.
---
- How does this matter now that famoely.org is a thing? - That is a good question. I hadn't considered that until I learned about it a few hours ago. Maybe that developer and I can sync up and do something fun together. Until then, consider them separate projects with overlapping audiences.
- How was this made? - I've heard people have been having good luck with agent driven coding recently and I decided to give it a shot. setlistkit and famoe.ly were both made with claude code, using the opus-4.8 and later opus-5.0 models. If that ruins this for you, I'm sorry. I've been involved in open source software for decades (my github hub account goes back to 2008) so I did everything in my power to make sure the project follows best practices, has active security scanning, code linting, a permissive license, and is not a messy pile of LLM slop/spaghetti. I know, some of the page wording still reeks of AI 😬. I'm working on it. I was rushing to get this out before I hit the road for IN/OH/IL.
Some other things in the works for setlistkit: an interactive tool that helps you clean up raw archive.org data when you're building a dashboard set for yourself. Likewise, a tool that can download and build actual playlists for you from recent archive uploads. E.g., take the predictions on the Scorecard and download matching audio tracks into a tagged album for you to listen to. I've been doing that and it's been my favorite part of this project. That part just coded up in a generic sharable way yet.
I hope you enjoy! Maybe we'll run into each other later this week. I'm on the lawn at the Everwise Amphitheater, and Evans Amphitheater shows. I'm in the boxes when I get back home to Chicago at Ravinia.