Inspiration
What it does
HInspiration
Sports coverage today is saturated with betting odds, promotional partnerships, and commercial noise. Somewhere in that clutter, the actual story of the game — the records, the statistics, the history — gets buried. I wanted a tool that strips all of that away and gives fans back the pure narrative of what actually happened on the field. What it does Sporttsotron takes a matchup as input and uses the Gemini API, guided by a specialized system prompt, to generate a clean, statistics-focused historical narrative. It highlights record-breaking moments and structures the output so the history of the game is front and center — no betting lines, no sponsor mentions, no filler commentary. How I built it Sporttsotron is a single-page, fully static web app — vanilla JavaScript, HTML5, and CSS3, deployed on GitHub Pages with no backend server. It follows a BYOK (Bring Your Own Key) model: users supply their own Gemini API key, which is stored only in local browser storage and never transmitted to any third party. The core of the app is a specialized system prompt that directs gemini-2.5-flash to standardize match statistics, build explicit historical context, and isolate record-breaking highlights into a clean, structured output — turning a simple matchup query into a focused narrative. Challenges I ran into The most frustrating challenge was also the smallest: my API calls were failing with a 404 error, and it took hours of debugging to trace it back to a single outdated model identifier (gemini-1.5-flash instead of gemini-2.5-flash). It was a good reminder that the smallest mistakes can cost the most time — and that systematically checking error messages against the API's actual supported models is worth doing early, not late. What I learned Working through the debugging process reinforced how important it is to read error messages literally rather than assuming the problem is architectural. I also learned the value of separating concerns cleanly: keeping the prompt-engineering logic (what makes the narrative good) distinct from the API plumbing (how the request actually reaches the model) made it much easier to isolate where the real bug was. What's next for Sporttsotron A natural next step would be adding a statistics-driven prediction layer alongside the historical narrative — giving users both the story of the game's past and a data-grounded look at upcoming matchups, while staying true to the project's core mission: pure history and stats, no noise.ow we built it
Challenges we ran into
Accomplishments that we're proud of
What we learned
What's next for Sporttsotron
Built With
- api
- css
- gemini
- github
- gooogle
- html5
- javascript
- pages
- sdk
Log in or sign up for Devpost to join the conversation.