DEV Community

Cover image for MMA Coach Assistant
Paulo
Paulo Subscriber

Posted on

MMA Coach Assistant

# MMA Coach Assistant - Powered by Google Gemini

This is a submission for the [Google AI Studio Multimodal Challenge](https://dev.to/challenges/google-ai-studio-2025-09-03)

## What I Built

The **MMA Coach Assistant** is a cutting-edge web application designed to revolutionize fight preparation for coaches, analysts, and fighters. It leverages the **multimodal capabilities of Google’s Gemini API** to analyze actual fight video footage and generate a comprehensive, AI-powered game plan.

The app solves a critical problem in combat sports: the time-consuming and subjective nature of traditional fight analysis. Instead of manually reviewing hours of footage, coaches can now upload short clips of their fighter and opponent, and within minutes receive a structured, data-driven report that includes:

- A detailed comparison of both fighters’ styles, strengths, and weaknesses.
- A head-to-head prediction with confidence scoring.
- A personalized, actionable game plan with strategy, tactics, and training drills.

Built with **React, Tailwind CSS, and the Gemini 1.5 Flash model**, this tool transforms raw video into strategic insight—making elite-level analysis accessible to all levels of MMA practitioners.

---

## Demo

🎥 **Watch the Full Demo on YouTube**:  
[![MMA Coach Assistant Demo](https://img.youtube.com/vi/Q-I-Oo1Ii1c/hqdefault.jpg)](https://youtu.be/Q-I-Oo1Ii1c)  
👉 [Watch on YouTube](https://youtu.be/Q-I-Oo1Ii1c)  
*Full walkthrough showing: fight details input, dual video upload, AI analysis process, and complete game plan generation.*

🛠️ **Explore the Source Code on GitHub**:  
[![GitHub Repository](https://img.shields.io/badge/GitHub-Repository-blue?logo=github)](https://github.com/PauloTuppy/MMA-Coach-Assistant)  
🔗 [https://github.com/PauloTuppy/MMA-Coach-Assistant](https://github.com/PauloTuppy/MMA-Coach-Assistant)  
*Includes full frontend code, React components, Gemini integration logic, and setup instructions.*

📸 **Screenshots**:


![ ](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/2q3kspgvppdinvziccbj.jpeg)

![ ](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/n0ze5zs9gfarte920mep.jpeg)

![ ](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/i73o10vq5bi05yq21r77.jpeg)

![ ](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/win8yz4ktvhivutcses3.jpeg)
---

![ ](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/vnvbw0448ymo1b948b2h.jpeg)
## How I Used Google AI Studio

![ ](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/66s1y63podnz3slju0mc.jpeg)

I used **Google AI Studio** as the foundation for developing and testing the core AI logic of this application. Specifically:

- I designed and iterated on **multimodal prompts** that instruct Gemini to analyze fight videos and extract meaningful behavioral patterns (e.g., stance, movement, striking frequency, defensive flaws).
- I tested various **Gemini models** and selected **Gemini 1.5 Flash** for its optimal balance of speed, cost, and multimodal understanding—perfect for processing video inputs efficiently.
- I leveraged **JSON mode** in the Gemini API to ensure structured, predictable outputs, enabling seamless integration with the frontend React components.
- I used AI Studio’s chat interface to simulate edge cases (e.g., poor video quality, unclear angles) and refine the prompt engineering to improve robustness.

AI Studio allowed me to rapidly prototype the AI behavior before integrating it into the full-stack app, significantly accelerating development.

---

## Multimodal Features

The key innovation of this app lies in its **multimodal analysis**—the ability to process **video + text + context** together:

### 🎥 Video Analysis (Visual Input)
- The app accepts **MP4/MOV video uploads** (up to 50MB) of real fight footage.
- Using Gemini’s multimodal capabilities, it analyzes **multiple frames per second** to detect:
  - Fighter stances (orthodox, southpaw)
  - Striking tendencies (lead hand usage, kicking frequency)
  - Defensive habits (hand positioning, head movement)
  - Movement patterns (forward pressure, lateral circling)

### 📝 Contextual Text Input
- Coaches provide **fighter names and weight class**, which Gemini uses to contextualize the analysis (e.g., adjusting expectations for cardio in Flyweight vs Heavyweight bouts).
- This text context is fused with visual data to produce a more accurate and relevant report.

### 🧠 Why This Enhances User Experience
- **From Subjective to Objective**: Reduces human bias in scouting opponents.
- **Time Efficiency**: Turns hours of film study into a 2-minute process.
- **Actionable Output**: Converts visual observations into a structured game plan with drills.
- **Accessibility**: Brings professional-level analytics to grassroots coaches and gyms.

By combining video and text inputs, the app creates a **true AI co-pilot for fight strategy**, demonstrating the transformative potential of multimodal AI in sports performance.

---

🛠️ **Tech Stack**:
- Frontend: React + TypeScript + Vite
- Styling: Tailwind CSS
- AI Backend: Google Gemini API (`@google/generative-ai`)
- Deployment: Vercel

📁 **Source Code**: [GitHub Repository](https://github.com/PauloTuppy/MMA-Coach-Assistant)

👤 **Developer**: PauloTuppy (Individual Submission)

---

🌟 Thank you for reviewing my submission! This project showcases how **multimodal AI can empower real-world decision-making**—one fight at a time.
Enter fullscreen mode Exit fullscreen mode

Top comments (0)