PlayCreate — Won Us a Trip to SF

timeline: August 2025 - October 2025 • team: Victor Guo, David Liang, Muhammad Mamdani
tech stack: React, TypeScript, TailWind CSS, Next.js, Node.js, PostgreSQL
Overview
Sports are analytical. There are endless strategies, plays, and other things for coaches to teach. These strategies are often taught on whiteboards with magnets and markers... Old School.
We built PlayCreate to modernize the way coaches coach.
With PlayCreate, you can create your own animations, set formations, and do everything a traditional coaching board can do. However, our AI agent can automate these tasks, analyzing the board and creating these animations/formations for you.
The Mission
PlayCreate was built to compete in the Unfounders startup competition. The goal was very simple go viral & build some thing cool. The top 5 teams will get flown out to San Francisco to stay at a hacker house for a few days and explore tech and SF's culture.
So we had to participate. Together, me, Muhammad, David, and Victor spent late nights together, did silly things, and went on some crazy adventures.
How it works technically
PlayCreate's frontend was built with React and its backend is built with JavaScript. User data, saved plays and saved boards were stored with PostgreSQL. The way animations and formations are set is similar to a coordinate system.
Under the hood, think of the field/court as a graph with an x and y axis, so that we can track player positions with an x and y coordinate. This allows us to call OpenAI's api and let it generate different positions, and then we animate it using linear interpolation and some calculations:
export const lerp: InterpolationFunction = (from, to, progress) => ({
x: from.x + (to.x - from.x) * progress,
y: from.y + (to.y - from.y) * progress,
});Linear interpolation function which is then used with other functions to animate
Visual representation of how it works under the hood
Virality
So remember how I said the goal of the competition is to go viral? Well... we did! Victor is a social media genius, so we just listened to his instructions and then we got over 10 million total views by creating brainrot basketball videos.
The bulk of the views came from Youtube Shorts, but we also documented our journey on Twitter, where it was less brainrot and more so documentation. There, I managed to grow my Twitter following and also meet some amazing people who helped us out in our journey.
Results
We won the competition and we went to San Francisco! In this journey, we got over 1000 users, 10 million+ views, and were forming partnerships with 4 basketball clubs in Canada. We went to San Francisco in October, and we learned a LOT. Great experience.
Thank you to my group for being so disciplined and easy to work with over these months 🙏.
This journey will always be a core memory, especially since we did this REALLY early on in our careers... like first month of first year of university.
