Inspiration
Soccer is the world's most popular sport, but it's hard to get into if you're new. The rules, positions and tactics are one barrier. The culture is another: the chants, the club rivalries, and the way a stadium sings for 90 minutes. Most learning tools are either dry rulebooks or English-only fan content. We wanted something that teaches the game the way fans experience it, for both English and Spanish speakers. It should feel like a game, not a textbook.
What it does
KickStart is a bilingual (EN/ES) soccer-learning platform.
Learn: a guided lesson path with interactive scenes and checks, plus a tactics board with formations and positions. Play: drills, a game mode, and quizzes, including club quizzes. Culture: club culture cards and chants explained in three layers: what the stand sings, what it literally means, and what it really means. Chants are never translated, so the original stays intact. Leagues: a league matcher that suggests leagues and clubs based on your taste. FIFA section: a World Cup culture section with pages for confederations and individual countries, including flags. Progress: XP, streaks, badges, a profile and an account. Chatbot: a helper for explaining plays and answering questions.
How we built it
Frontend: React 19 with Vite, using a custom "Pitch Craft" design system. Tests run in Vitest with Testing Library. Backend: an Express API gateway that mounts several independent feature backends on one port: lessons/formations/glossary, leagues/culture/league-matcher, and quiz/XP/progress. Team split: we worked as separate workstreams (frontend shell, lessons, leagues and culture, quiz engine). The gateway imports each router as-is, with no forking of anyone's code. Localization: one convention everywhere (?locale=, then the X-Locale header, then Accept-Language). Responses come back already localized, and the UI refetches when the language switches. Frontend structure: a small fetch helper and useResource hook, plus adapters that map API payloads to the existing components, so we added no data-fetching dependency and didn't have to rewrite the design system.
Challenges we ran into
Merging four parallel workstreams into one app without stepping on each other. The gateway approach and adapters solved that. Real bilingual support. Chants and nicknames must stay in their original language while everything else translates, so the data model needed special handling. Explaining chants in a way that's accurate and respectful of the culture, not just a literal translation. Collecting and organizing large data sets, like World Cup countries, flags, club logos and league logos, and keeping them consistent. Merge conflicts and coordinating branches, such as the FIFA section, as the project grew.
Accomplishments that we're proud of
A full, working, bilingual learning platform built by a team working in parallel, and it comes together as one cohesive product. The three-layer chant format, which conveys what the words mean and what they mean to fans. Interactive lesson scenes, a tactics board and a playable game mode, not just static text. A broad content set: clubs, leagues, World Cup nations, quizzes and lessons. A test suite that runs against the real API, plus a smoke script that checks each workstream.
What we learned
Clear API contracts and shared conventions, like locale handling, make parallel teamwork possible. Localization is a design problem, not a translation step. Some content shouldn't be translated at all. Reusing a design system and adapting data to fit it is faster than rebuilding the UI. Gamification (XP, streaks, badges) keeps learners coming back, and teaching through culture keeps them interested.
What's next for KickStart
More languages beyond English and Spanish. More leagues, clubs, national teams and chants, including women's soccer and more regions. Deeper tactics content, such as pressing, set pieces and match analysis, with video and live match integration. A smarter AI tutor that adapts lessons to each learner's level. Social features: friends, leaderboards and league challenges. Mobile apps and offline mode so people can learn anywhere.

Log in or sign up for Devpost to join the conversation.