PlayCreate — Won Us a Trip to SF

PlayCreate

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.

playcreate guys

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

playcreate grid

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.

youtube stats

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.

boys in SF