| 1 | # Chicago Stepping App - Dad's Plan, Transcribed & Sequenced |
| 2 | |
| 3 | *Source: 5 voice-memo videos dad recorded (`Plan-Transcribe/IMG_2444-2448.MOV`).* |
| 4 | *Transcribed 2026-06-28 with Whisper large-v3-turbo on the homelab RTX 3060.* |
| 5 | *Verbatim source of truth: `Plan-Transcribe/transcripts/_ALL_TRANSCRIPTS.md`.* |
| 6 | |
| 7 | --- |
| 8 | |
| 9 | ## 0. THE BIG CORRECTION (read first) |
| 10 | |
| 11 | This app is for **CHICAGO STEPPING** - the partner dance - **NOT** Greek / Divine Nine / NPHC stepping. |
| 12 | |
| 13 | Dad is explicit (IMG_2446): *"it's a difference… between Chicago stepping and Greek stepping. So this here is Chicago stepping."* |
| 14 | |
| 15 | > **Chicago stepping** (a.k.a. "steppin'") originated in the African American community of Chicago's West and South sides. It evolved during the 1940s-60s from the jitterbug and the 1950s glide-and-stride dance known as **the bop** - drawing on two-step, swing, bebop, six-count, eight-count, ballroom, and the jitterbug/scooter-bug. (Dad's words, IMG_2446 + IMG_2447.) |
| 16 | |
| 17 | **Every existing doc in this repo is mis-themed** (`STEPPING_APP_IDEAS.md`, `STEPPING_APP_IMPLEMENTATION_PLAN.md`, parts of the scaffold copy all assume Divine Nine / HBCU step shows). They must be re-pointed to Chicago stepping. The good news: dad's actual feature list (promoters, *sets*, DJs, classes, per-city travel) was always Chicago-stepping shaped - "sets" = partner-dance social gatherings in a city, not step shows. |
| 18 | |
| 19 | **Dad's core goal, in his words (IMG_2446):** |
| 20 | > *"I'm just trying to provide an app that people in different cities… can just share, so people [are] abreast of what's going on, besides having to go to YouTube and Facebook Live to see content. That's my goal."* |
| 21 | |
| 22 | So the north star is: **one place, organized by city, where the Chicago-stepping community posts and finds what's going on** - replacing scattered YouTube/Facebook-Live discovery. |
| 23 | |
| 24 | --- |
| 25 | |
| 26 | ## 1. The whole app, by dad's own structure |
| 27 | |
| 28 | Dad's mental model is **city-first**: nearly every feature is "in each city / in certain cities." The app is a directory of **cities**, and inside each city sit the modules below. |
| 29 | |
| 30 | ### Per-city modules dad asked for |
| 31 | | # | Feature | Dad's words / intent | Source | |
| 32 | |---|---------|----------------------|--------| |
| 33 | | A | **Promotions / promotional events** | Anything in that city, or anything an event's host wants to add, as a promo | 2444, 2445 | |
| 34 | | B | **Classes** | "A space for classes in each city" | 2444 | |
| 35 | | C | **DJs** | Stepping DJs / Chicago-stepping music DJs in the city | 2444 | |
| 36 | | D | **Videos** | Users upload videos from their city ("somebody in Houston can send me the video, we upload to the app") | 2444 | |
| 37 | | E | **Dancing sets - locations** | "Location of dancing sets in certain cities" - find the sets | 2444 | |
| 38 | | F | **Special events** | Special / cause events (he names domestic-violence awareness as an example) | 2445 | |
| 39 | | G | **Live feature** | "Go live" in-app | 2445 | |
| 40 | | H | **Comment section** | So people can give feedback / discuss | 2445 | |
| 41 | | I | **Event locations / event centers** | The actual venues per city ("different event centers in that location") | 2445 | |
| 42 | | J | **City main attraction(s)** | "One or two main attractions" per city where the event is held | 2445 | |
| 43 | | K | **Stepping groups** | Each city shows the stepping group(s) in that city | 2445 | |
| 44 | | L | **Restaurants near the set/hotel** | A couple of restaurants featured near the set or host hotel | 2445 | |
| 45 | | M | **Mall / shopping near the event** | "If you're in Charlotte, what's the closest mall to the event?" | 2445 | |
| 46 | | N | **Hotels (incl. additional hotels)** | Host hotel + additional nearby hotels | 2445 | |
| 47 | | O | **Hospitals near the venue** | Closest hospital "just in case," for safety/medical | 2445 | |
| 48 | | P | **Entertainment** | Other entertainment in the city tied to Chicago stepping | 2445 | |
| 49 | | Q | **Monetization for upkeep** | Ads, paid download, or free - to cover maintenance/edits/updates (every-few-days to weekly), since the dev office maintains it | 2448 | |
| 50 | |
| 51 | Items I-P together are dad's **"traveling stepper" city guide** - for people going out of town for a set/weekender (he repeats "when you go out of town to certain cities"). |
| 52 | |
| 53 | --- |
| 54 | |
| 55 | ## 2. SEQUENTIAL BUILD ORDER (what to do, in order) |
| 56 | |
| 57 | This is the order to actually build it - foundation first, then dad's features grouped so each phase ships something usable. Lettered features above are referenced as `[A]…[Q]`. |
| 58 | |
| 59 | ### Phase 0 - Re-base the project onto Chicago Stepping *(do this before any feature work)* |
| 60 | 1. Rewrite `STEPPING_APP_IDEAS.md` and `STEPPING_APP_IMPLEMENTATION_PLAN.md` to Chicago stepping; strip all Divine Nine / HBCU / NPHC / "step show / stroll / fraternity" framing. |
| 61 | 2. Fix the authoritative definition + scope copy (use §0 above). |
| 62 | 3. Re-pick launch cities for **Chicago stepping** culture, not D9 density. Chicago is the home market; strong steppin' scenes include **Chicago (flagship), Atlanta, Detroit, Dallas/Houston, Charlotte, DC/DMV** (dad himself name-drops Houston and Charlotte). Confirm with dad. |
| 63 | 4. Keep the existing stack/monorepo (Next.js + tRPC + Drizzle + Supabase + Mux) - it's fine; only the *theme/content* was wrong. |
| 64 | |
| 65 | ### Phase 1 - The spine: Cities + content posting + discovery |
| 66 | 5. **City model & directory** - the app's backbone; everything is city-scoped. |
| 67 | 6. **Open posting + accounts** (dad: anyone can contribute / "somebody in Houston can send me the video"). |
| 68 | 7. **Sets `[E]`** - the core object: a dancing set/event with city, venue, date/time, host. |
| 69 | 8. **Events & promotions `[A]` `[F]`** - upcoming events, promotional posts, special/cause events. |
| 70 | 9. **Videos `[D]`** - per-city user-uploaded video (upload → playback). *(Mux.)* |
| 71 | 10. **Comment section `[H]`** - on sets/events/videos. |
| 72 | |
| 73 | > Ships dad's #1 goal: a city-organized feed of sets, events, promos, and videos that replaces hunting on YouTube/Facebook Live. |
| 74 | |
| 75 | ### Phase 2 - The people & the music |
| 76 | 11. **Promoters / hosts** - profiles, their events (implied throughout; the people who throw sets). |
| 77 | 12. **Stepping groups `[K]`** - per-city crews/groups. |
| 78 | 13. **DJs `[C]`** - per-city stepping DJs (who's spinning, where). |
| 79 | 14. **Classes `[B]`** - per-city lessons (teacher, schedule, location). |
| 80 | |
| 81 | ### Phase 3 - The traveling-stepper city guide |
| 82 | 15. **Event venues / centers `[I]`** + **city main attractions `[J]`**. |
| 83 | 16. **Hotels `[N]`** (host + additional nearby). |
| 84 | 17. **Restaurants `[L]`**, **malls/shopping `[M]`**, **entertainment `[P]`** near the set/hotel. |
| 85 | 18. **Hospitals `[O]`** - nearest hospital to the venue (safety). |
| 86 | *(Curated entries first; can later pull from Google Places. Flag: data-entry/API effort.)* |
| 87 | |
| 88 | ### Phase 4 - Live |
| 89 | 19. **Live feature `[G]`** - go live in-app for sets/events. *(Mux live; flag: most technically involved.)* |
| 90 | |
| 91 | ### Phase 5 - Sustainability |
| 92 | 20. **Monetization for upkeep `[Q]`** - design schema for it from day one, switch it on here: ads and/or paid download and/or free. Goal is covering maintenance (frequent edits/updates by the dev office), per dad. Decide model with dad/Zion. |
| 93 | |
| 94 | --- |
| 95 | |
| 96 | ## 3. Flag list (clarify with dad / scope carefully) |
| 97 | - **Live streaming `[G]`** and **video upload/transcode `[D]`** are the heaviest pieces - Mux handles both, but they need real config + moderation. |
| 98 | - **Per-city travel data `[I]-[P]`** - curated by hand at first vs. pulled from APIs (Google Places). How "steppin'-specific" vs. generic should it be? |
| 99 | - **Open posting** → needs minimum moderation (spam/abuse) to survive. |
| 100 | - **Monetization `[Q]`** - ads vs. paid download vs. free is still open; dad wants *something* to fund upkeep. |
| 101 | - **Launch cities** - confirm the Chicago-stepping city list with dad. |
| 102 | |
| 103 | --- |
| 104 | |
| 105 | ## 4. Handoff to the wireframing / integration agent |
| 106 | |
| 107 | Next step: an Opus 4.x agent wireframes these screens and integrates the plan into the existing `apps/web` scaffold, building in the Phase order above. Suggested kickoff prompt: |
| 108 | |
| 109 | > You are integrating dad's plan into the Chicago Stepping app (`/shared/projects/SteppingApp`). Read `DADS_PLAN_SEQUENCED.md` (this file) and `Plan-Transcribe/transcripts/_ALL_TRANSCRIPTS.md` (dad's verbatim words) FIRST. This is **Chicago stepping (partner dance), NOT Divine Nine** - re-theme any D9 content you touch. Use RAG-first (`homelab_context`) before reading scaffold files. Wireframe the city-first IA (city directory → per-city modules A-P) and the Phase-0/Phase-1 screens, then integrate into `apps/web`. Keep the existing Next.js + tRPC + Drizzle + Supabase + Mux stack. Honor the design system in `DESIGN_SYSTEM.md`. Ship Phase 0 (re-base) + Phase 1 (cities, sets, events/promos, videos, comments) first. |