Home
Project

SquashNoFriends

PythonOpenAI APINext.jsMySQL

What It Does

A matchmaking platform for McGill's squash gym. You describe your week in plain English, and the system pairs you with an opponent and emails you your match. Built for 1v1, but the scheduler handles 2v2 and 3v3 — we scoped down for the hackathon, not because it couldn't scale.

The Idea

First time calling an LLM API. 2023. I fed it messy, ambiguous availability descriptions and it handed back clean, structured time slots. In 2026 I understand how unremarkable that sounds. But you had to see it — it was like a caveman discovering fire.

Ambiguous input in, structured data out. That was the entire premise. Not everything here is polished, but the idea was good and it actually worked.

How It Works

  • Users describe their weekly availability in natural language
  • An LLM parses the text into structured time intervals
  • A Python scheduler maximizes optimal pairings across all registered players
  • Match confirmations go out by email at the start of each week