Murder Mystery LLM

paused

Interactive SQL mystery game with an in-character AI assistant that reviews queries and gives hints

Tech Stack

ReactViteNode.jsExpressPostgreSQLOpenAI

Meet Watson

Your AI detective companion who reviews queries and drops hints

Watson responds with detective flair and SQL guidance

What We Built — a beautiful disaster

Phase 1

Watson Actually Works

The AI assistant is the star. Watson reviews your SQL queries, catches syntax errors, and nudges you toward better practices — all while staying in character as a 1920s detective. "Elementary, my dear querier. Your JOIN syntax appears... questionable."

Built on GPT-4o-mini with careful prompt engineering to keep responses concise and on-theme. The word-by-word typing effect sells the illusion that Watson is thinking through your query in real-time.

The win: Character-driven AI that actually helps you learn SQL without breaking immersion

Phase 2

The Mystery... Too Mysterious

I got ambitious. The "Luna Park Murder Mystery" features 12 interconnected database tables, 260 timestamped records, red herrings, alibi conflicts, and a solution that requires joining at least 6 tables to crack.

Turns out nobody wants to solve a mystery that complex. Including me. I burned out trying to playtest my own creation and realized the difficulty curve went from "tutorial" to "PhD thesis" with nothing in between.

The lesson: Scope creep is real. Sometimes the original SQL Murder Mystery was simple for a reason

🔮

Status: Shelved (For Now)

Watson works. The tech works. The mystery is just... too much mystery. Maybe someday I'll revisit with a simpler case — or maybe I'll leave this as a monument to ambition. Either way, the Watson prompt engineering was worth the journey.

Tech Stack

ReactViteNode.jsExpressPostgreSQLOpenAI GPT-4o-mini

Full-stack setup with a real PostgreSQL database. The infrastructure is solid — it's just waiting for a mystery that doesn't require a detective degree to solve.