A Windows desktop app for your daily dose of Grateful Dead–era live music. Pick an artist, get a show of the day from the Internet Archive, view the setlist (when configured), and play the show’s tracks.
- Artists: Grateful Dead, Jerry Garcia Band, Dead & Company
- Show of the day: Load a random show from the Internet Archive for the selected artist (optionally randomize artist on each refresh)
- Setlist: View the setlist for the current show via the setlist.fm API (requires an API key)
- Playback: Play tracks from the show with play/pause, seek, and repeat modes (None, Repeat All, Repeat One)
- Settings: API key and last show/artist are stored in
%AppData%\DeadDailyDose\settings.json
- Windows (WPF)
- .NET 8 SDK (only needed if you build from source; the release zip includes the runtime)
Pre-built Windows builds are published on GitHub Releases. Download the latest DeadDailyDose.exe, run it—no install or .NET required.
# Restore and build
dotnet restore
dotnet build
# Run
dotnet runOr open DeadDailyDose.sln in Visual Studio and run from there.
Setlist display uses the setlist.fm API. Without an API key, the app still works: you can pick an artist, load a show, and play tracks; the setlist panel is hidden.
To enable setlists:
- Get a free API key from setlist.fm.
- In the app: File → Set API Key… and paste the key.
The key is saved in your AppData settings and not sent anywhere except setlist.fm.
- MainWindow.xaml / MainViewModel.cs — Main UI and show/track/playback logic
- Models/ —
Artist,Show,SetlistSet,Track - AppSettings.cs — Persisted API key and last show/artist
- Themes/ — WPF styles and design tokens
The Release workflow builds the single-file exe and attaches it to a GitHub Release. It runs in two cases:
-
When you push a version tag:
git tag v1.0.0thengit push origin v1.0.0— the workflow creates the release and uploadsDeadDailyDose.exe. -
When you publish a release from the GitHub UI:
On the repo’s Releases page, click Create a new release, choose an existing tag (e.g.v1.0.0), add notes, and click Publish release. The workflow runs and uploadsDeadDailyDose.exeto that release.
If a release only shows “Source code (zip)”, run the workflow manually: Actions → Release → Run workflow → enter the tag (e.g. v1.2.0) and run. The workflow will build and attach DeadDailyDose.exe to that release. (The tag must already have a release.)
A mobile-friendly web version of Dead Daily Dose is served from the docs/ folder:
Live site: https://AdamMcIntosh.github.io/DeadDailyDose/
From the project root:
npm run serveThis runs npx serve docs and serves the site (typically at http://localhost:3000). No Node install is required beyond having npx available.
- Go to Settings → Pages in this repository.
- Under Source, select Deploy from a branch.
- Set Branch to
mainand Folder to/docs. - Click Save.
The site will be available at https://AdamMcIntosh.github.io/DeadDailyDose/ within a minute or two.
- Same show-of-the-day algorithm as the desktop app (deterministic by date, random fallback).
- Supports Grateful Dead, Jerry Garcia Band, and Dead & Company.
- Audio playback with track list (powered by Internet Archive).
- Mobile-first responsive design using Bulma CSS.
- No API key or build step required.
MIT License. See LICENSE.