Inspiration
When the idea of a popularity leaderboard was suggested, that convinced us to settle on Challenge 5 for a prospects leaderboard instead. There were similar platforms like FanGraphs, but none attempted using machine learning for prospect predictions.
What it does
This is a prospects leaderboard that uses AI-predicted WAR scores to rank MiLB prospects.
How we built it
The web-app was built with Next.js using TypeScript and shadcn/ui for the frontend. The data was retrieved using the MLB-StatsAPI Python wrapper library and stored on Firebase. The model was created with Vertex AutoML (98% R2), which we used due to its superior accuracy over H2O AutoML Stacked Ensemble (97% R2).
Challenges we ran into
- Feature selection for the machine learning pipeline took time and deliberation before running the actual training sequence.
- Retrieving sabermetrics data with the StatsCast API required spending time reading documentation on the required query parameters to retrieve the proper data.
- Data cleaning for remove non-pitchers that were included in the pitcher queries.
- Originally, Chakra UI was selected, but shadcn/ui offered a smoother development experience for using CLI inputs or manual copy/pasting components.
- Parsing the .json schemas to template into the table required careful attention to resolve errors.
Accomplishments that we're proud of
- Achieving 98% MLB WAR accuracy based on the feature selection we settled on.
- Integrating a reusable component library like shadcn/ui helped speed up development.
- Working application that displays all data with player and team images.
What we learned
- Storing images as compressed base64 strings in Firebase to avoid running costs of standard image storage.
- Learning about WAR as the gold-standard of representing overall player value.
What's next for Boba | Your AI-Powered MLB Superfan
- Potential to integrate other positions (hitters, fielders) and other leagues (e.g., international league).
- Potential to select other languages for the web app.
Built With
- firebase
- google-cloud
- next.js
- python
- react
- shadcn
- typescript
Log in or sign up for Devpost to join the conversation.