AIML@TUAIML@TUAIML@TUAIML@TUAIML@TUAIML@TUAIML@TUAIML@TUAIML@TU
AIML@TU · Retrospective + field guide
Multi-Club Mashup IV
How the mashup came together, and how we built the live website, AI Slop-etition, and Ultra Jeopardy with Claude Code.
Tue Sept 29, 2026 · 6–9 PM · ACSU Great Hall A
AIML@TU · Multi-Club Mashup IV · Part 1: the event
Part 1 · The road TO MCM-IV
Nineteen days from planning to doors
Sept 10
Planning Meeting #1
Clubs brainstorm a theme together
Sept 14
Theme vote closes
Discord vote picks Science Fiction
Sept 25
Portal + live page
Collaborator portal and live event page built in one afternoon
Sept 28
Planning Meeting #2
Final planning meeting with the collaborating clubs
Sept 29, 2 PM
Event-day build
Sponsor sidebar, Slop-etition uploads and voting
Sept 29, 6 PM
Doors open
Live fixes, and Ultra Jeopardy built mid-event
AIML@TU · Multi-Club Mashup IV · Part 1: the event
Part 1 · Run of show
Alternating 20-min Spotlight Activities with 20 min breaks
| Time | Spotlight | Club |
|---|---|---|
| 6:15 PM | MCM-IV Kickoff & Welcome | AIML Club |
| 6:30 PM | Tulsa Tossing Performance Demo | Tulsa Tossing Performing Arts |
| 7:10 PM | Digital Hygiene Challenge | WiCyS + Root66 |
| 7:50 PM | Jedi vs. Armored Knight | HAMA |
| 8:30 PM | Ultra Jeopardy | AIML Club |
| 8:50 PM | Prizes + Closing Ceremony | AIML Club |
Part 1 · The live page
Floor map with every club's table
Countdown to the next spotlight
Sidebar for the sponsor, food and prize vendors
Scan to follow along on your phone
AIML@TU · Multi-Club Mashup IV · Part 1: the event
AIML@TU · Multi-Club Mashup IV · Part 1: the event
Part 1 · Spotlights
Each spotlight took over the screen
6:30 Tulsa Tossing
7:10 Digital Hygiene
7:50 Jedi vs. Knight
8:30 Ultra Jeopardy
Part 1 · On the floor
Background Activities
AIML Club
AI Slop-etition: hand-drawn AI slop
Tulsa Tossing
Performance demo with audience participation
HAMA
3D-printed lightsabers and Imperial propaganda
WiCyS + Root66
Cryptography challenges for an inflatable duck
Physics Students
Gyroscope and spinning-wheel demos
Women Engineers
Earring-making station
R.A.T.S.
RC robot race
LANBrew
Multiplayer gaming
IGDA
Alien-themed board and card games
Psych Club
Psychology activities
Tier List Club
Tier lists
AIML@TU · Multi-Club Mashup IV · Part 1: the event
Part 1 · On the floor
Scenes from the floor

HAMA, helmets and robes included

R.A.T.S. and their pool-noodle robot track

Society of Women Engineers table
AIML@TU · Multi-Club Mashup IV · Part 1: the event
Part 1 · AI Slop-etition
QR photo upload -> auto-posted to page.
Multiple rounds, voting, winner selection.
Hall of slop
Appleina Chappelina
An apple on legs, tongue out. Round 1 champion.
SlyGPT and Shrimp Jesus
A dead heat in Round 2. Shrimp Jesus went on to name a Jeopardy team.
Meowgshot
A very, very buff cat. Round 3.
AIML@TU · Multi-Club Mashup IV · Part 1: the event
Part 1 · Ultra Jeopardy
The Dark Slide takes Ultra Jeopardy
Teams named (and renamed) themselves from their phones:
The Dark Slide · champions
Among Us
Shrimp Jesus
Jedi Scum
AIML@TU · Multi-Club Mashup IV · Part 1: the event
Part 1 · Thank you
Made possible by
The clubs
AIML Club
Tulsa Tossing Performing Arts
WiCyS & Root66
HAMA
Society of Physics Students
Society of Women Engineers
R.A.T.S.
LANBrew
IGDA-TU
Psychology Club
TU Tier List Club
Martial Arts Club
Platinum sponsor
StayGold.Now
Prize vendors
66 & Sunny Trading Co. · Black Moth · Bodega by Umber · Boulevard Trash · Mother Road Market
Food
Mazzio's Pizza · King's Way Wings
Student Activities Board
Emi Sakamoto
Peter Nguyen
AIML@TU · Multi-Club Mashup IV · Part 1: the event
Part 1 · Retrospective
What worked, and what we'd change
Worked
Locking the run of show early, so the page, portal and flyers all agreed
One live page on the projector with the map, schedule, countdown and QR codes
QR codes for everything: following along, uploads, votes and joining the game
Change
Slop-etition Round 4 got no entries: merge it into Round 3
Write down attendance, winners and scores on the night
Rehearse on the room's actual computer: Edge showed an old cached copy of the board
AIML@TU · Multi-Club Mashup IV · Part 1: the event
Part 2
Vibe engineering
How one club officer and Claude Code built the website, the AI Slop-etition and Ultra Jeopardy, including a game built while the event was running.
Part 2 · Architecture
Static pages and two tiny backends
Phones
Upload drawings, vote, buzz in
Room projector
Live event page, Jeopardy board
Organizer laptop
Jeopardy host console, admin scripts
GitHub Pages: static HTML, CSS and JavaScript
Published by deploy-to-public.sh from the main branch to the public branch, with no build step
Slop-etition Worker + D1 database
Photos resized on the phone and stored in D1; one changeable vote per phone per round
Ultra Jeopardy Worker + Durable Object
One game object handles every request in order, so the server decides who buzzed first
polls every 5–15 s
polls every 1–1.5 s
AIML@TU · Multi-Club Mashup IV · Part 2: vibe engineering · Secrets live only in ~/.config and Cloudflare, never in the repo
Part 2 · How we worked
Ask, plan, build, verify, ship
01
Ask plainly
Requests in everyday words, batched after checking the page in a browser
02
Plan, ask back
Claude asks targeted questions first; that caught a voting-window conflict
03
Build in parallel
Write the rules down first, then agents build the backend, pages and content at once
04
Verify behavior
Screenshots at projector sizes, decoded QR codes, real requests to the live server
05
Ship on command
Deploy only when the organizer says so, then check the live site
“Please wait to deploy until I give the explicit order.”
The organizer, on event day
AIML@TU · Multi-Club Mashup IV · Part 2: vibe engineering
Part 2 · Build log
Four working sessions
| Session | When | What shipped |
|---|---|---|
| 007 | Sept 10–11 | Planning Meeting #1 deck, live about 25 minutes after its outline was written |
| 009 | Sept 25–26 | Collaborator portal, rebuilt live page, one-screen layout, sci-fi effects |
| 010 | Sept 29, 2–4:45 PM | Sponsor sidebar, view rotation, Slop-etition uploads, voting and winners |
| 011 | Sept 29, event night | QR fix, WiCyS Blooket link, Ultra Jeopardy built from 7:42 to 8:15 PM |
Every session left a transcript, notes and a handoff in the club repo's archive, so the next session picked up where the last left off.
AIML@TU · Multi-Club Mashup IV · Part 2: vibe engineering
Part 2 · Live event page
A page that knows what time it is
?at=19:15
Preview any moment of the night ahead of time; every screenshot here used it
20-minute spotlight cards
Then the floor map returns, taking turns with the Slop-etition gallery
QR codes always on screen
Follow-along, upload and vote codes beside every card
Sci-fi touches
5 text effects, 6 ambient effects and an original crawler
AIML@TU · Multi-Club Mashup IV · Part 2: vibe engineering
Part 2 · AI Slop-etition
From an AirDrop idea to QR codes
The pivot
Plan A: AirDrop photos to a laptop running the projector. Then: “I'll be running the event from a school desktop hooked into the room projector.” Plan B: QR, upload page, Cloudflare Worker.
The rounds
Uploads close at 7:10, 7:50, 8:30 and 8:40. Voting opens as each round closes; one changeable vote per phone; winners are marked at 8:50.
Tested for real
A temporary schedule let us upload, vote and moderate on the live server, then wipe it to zero before doors.
AIML@TU · Multi-Club Mashup IV · Part 2: vibe engineering
Part 2 · During the event
Fixing things with the doors open
6:23
Spotlight cards were hiding the QR codes. A shared QR rail was live and checked by 6:27.
6:28
The WiCyS Blooket link was added to their card, well ahead of 7:10.
7:42
“Now let's work on Ultra Jeopardy.” 48 minutes to showtime.
8:32
The projector showed blue lines in Edge. Clearing Edge's site data fixed it.
“MCM-IV is still going! We need to make a change to the live site.”
Dallas Elleman, 6:20 PM, mid-event
AIML@TU · Multi-Club Mashup IV · Part 2: vibe engineering
Part 2 · Ultra Jeopardy
Built in 33 minutes, mid-event
7:42
The ask: teams, buzzers, scoring, surprises, 20 minutes
7:45
Four quick decisions: answers aloud, all wild cards, clues, host link
7:50
Rules and API written down in one contract file
7:50
Three agents in parallel: server, pages, clue set
7:53
Server live; every rule re-tested against it
8:00
Organizer plays a test game locally
8:12
Feedback: new header, all-sci-fi categories
8:15
Deployed and checked live; played at 8:30
The key choice: a separate server, so the live Slop-etition was never touched mid-event.
AIML@TU · Multi-Club Mashup IV · Part 2: vibe engineering
Part 2 · Ultra Jeopardy
Three screens, one game server

Board: the projector

Host: sees answers, judges

Phone: buzz
Daily Double wager
Wormhole swaps scores
Hallucination +3× / −2×
Steal from the leader
Lightning all can score
AIML@TU · Multi-Club Mashup IV · Part 2: vibe engineering
Why it mattered
More than a night of activities
Every corner of campus
Performers, hackers, physicists, engineers, robot builders, gamers and sword fighters on one floor
Students made the show
Their drawings, votes and team names filled the big screen all night
AI, made playful
Hand-drawn "AI slop" and a trivia game an AI helped build in the middle of the party
Built to be reused
The live page, Slop-etition and Ultra Jeopardy are ready for MCM V, or any club's next event

At the WiCyS & Root66 table
AIML@TU · Multi-Club Mashup IV · Lessons and a playbook
Lessons in code
Paying the bug tax
| Bug name | What happened | Fix |
|---|---|---|
| stale-local-deploy-branch | A deploy built on an out-of-date local copy of the live branch | Sync the public branch before every deploy |
| deploy-overlay-never-deletes | Files deleted on main stay on the live site (42 so far) | Still open: issue #4 |
| deploy-leaks-main-ignored-files | The live branch had no ignore list, so server secrets could have shipped | Never publish workers/; secrets stay in ~/.config |
| cached-asset-skew | The room PC kept a stale copy; a hard refresh didn't help | Add version tags to CSS and JS links |
| grid-auto-column-blowout | The Jeopardy header widened its column to about 34,000 px, breaking the lobby and final standings | One CSS line; found while making this deck |
AIML@TU · Multi-Club Mashup IV · Numbers, lessons and a playbook
For MCM V
A playbook for next semester
01
Know the room
Which computer runs the projector, and is it online? That shapes everything.
02
Reuse, don't rebuild
Archive this page, then copy it; both games take new schedules and clues.
03
Rehearse every hour
Step ?at= through the schedule on the real projector PC and a real phone.
04
Keep score, literally
One person records attendance, winners, scores and photos on the night.
05
Rules before code
Write the game rules and API down first, then build the pieces in parallel.
06
Check, don't trust
Screenshot at real sizes, scan every QR, test the live server yourself.
07
Deploy on purpose
Sync first, scan for personal info, then load the live site after.
08
Plan the data's end
Student drawings sit in a database; decide before the event when to delete them.
AIML@TU · Multi-Club Mashup IV · Numbers, lessons and a playbook
Multi-Club Mashup IV
Thank you
To every club, volunteer, sponsor and slop artist who made Sept 29 happen.
See you at MCM V.