How evengene/lp-setlist-comparison works
This is a fan-facing interactive retrospective for Linkin Park’s From Zero World Tour. Fans browse tour and song views, inspect setlist patterns and statistics, compare shows, or find a show recap. The primary data path combines bundled per-leg setlists with tour metadata, then derives song statistics and heatmap data for the interface. The README describes all major product views; only some page internals were sampled, so their deeper data wiring is left unspecified. The documented app uses bundled data; the separate Setlist.fm API code is shown as an optional integration.
Main entry points: App.tsx App Router · LPSongs.tsx Songbook · HomeHeatmap.tsx Song Leg Heatmap · tourDataService.ts Tour Data Service
Components 21
App and Navigation
- Browser Entry
src/main.tsx - App Router
src/App.tsx - Tour Overview
src/pages/HomePage.tsx - Find Your Show
src/pages/FindYourShow.tsx - Show Comparison
src/pages/ComparisonPage.tsx - Tour Statistics
src/pages/StatsPage.tsx - About
src/pages/AboutPage.tsx
Tour Data and Analysis
- Tour Data Service
src/services/tourDataService.ts - Leg Setlists
src/data/tours - Tour Metadata
src/data/tourMetadata.json - Song Leg Heatmap
src/components/HomeHeatmap.tsx - Heatmap Builder
src/utils/heatmap.ts - Setlist Statistics
src/utils/setlistStats.ts
Songbook
- Songbook
src/pages/LPSongs.tsx - Song Catalog Hook
src/hooks/useLPSongData.ts - Song Database
src/data/lpSongDatabase.json - Song Deep Dive
src/components/SongDetail.tsx
External Integrations
- Setlist.fm Service
src/services/setlistService.ts - Setlist.fm Proxy
api/setlistfm.ts
Other components
- Fan
- Setlist.fm
Connections 22
- Fan → Browser Entry: opens app
- Browser Entry → App Router: renders
- App Router → Tour Overview: routes
- App Router → Find Your Show: routes
- App Router → Show Comparison: routes
- App Router → Tour Statistics: routes
- App Router → Songbook: routes
- App Router → About: routes
- Tour Data Service → Leg Setlists: loads and combines
- Tour Data Service → Tour Metadata: reads
- Song Leg Heatmap → Tour Data Service: loads tour data
- Song Leg Heatmap → Heatmap Builder: builds heatmap
- Song Leg Heatmap → Setlist Statistics: calculates song stats
- Song Leg Heatmap → Song Deep Dive: opens song details
- Songbook → Song Catalog Hook: loads catalog
- Song Catalog Hook → Song Database: reads
- Songbook → Tour Data Service: loads tour data
- Songbook → Setlist Statistics: calculates song stats
- Songbook → Song Deep Dive: opens song details
- Setlist Statistics → Song Database: looks up album data
- Setlist.fm Service → Setlist.fm: fetches setlists
- Setlist.fm Proxy → Setlist.fm: proxies requests