Inspiration

You have that interview for your first step into your career, then we must all be panicking and anxious and nervous about that interview. GatorPrep gives you the career readiness on Roblox to simulate interviews powered by Gemini. It also evaluates your interview response and constructive feedback.

So, let's all get ready and ace that interview!

What it does

GatorPrep is a dual-purpose platform:

Career Assistant: An AI-powered bot in Roblox that helps students practice behavioral interviews and technical logic in real-time while they play.

Professional Ledger: It captures gameplay moments (screenshots) and interview transcripts, minting them as Solana NFTs and storing the full extracted data (via Gemini OCR) in MongoDB Atlas.

Sharing Engine: A dedicated dashboard where users can view their "Capture Gallery" and instantly email their minted achievements to recruiters or peers using a FastAPI microservice deployed on Vultr.

How we built it

Frontend: Next.js with Tailwind CSS and Lucide icons for a sleek, responsive dashboard.

Game Client: Roblox Studio using Luau to handle real-time HTTP requests to our local bridge.

Microservice: A Python FastAPI backend running in a Docker container to handle SMTP email logic.

OCR: Gemini 2.5 Flash for high-speed document extraction.

Blockchain: Solana (Devnet) for minting low-cost, high-speed NFTs of gameplay captures and NFTs of badge earned.

Roblox Interview Simulation

Interview Scene

Question Interface

Tech Stack

Tech Stack Diagram

MLH Track - Solana

We utilized the Solana Devnet to create a permanent, verifiable record of a student's progress. By minting "Badge NFTs" for completed interviews and "Screenshot NFTs" for project milestones, we provide a decentralized way to prove a candidate's engagement beyond just a static resume.

We enabled minting the badge after successful interview and pressing "N" button into Roblox, and also enabled minting the game scene with pressing "M" button in Roblox. Save your memorable moment and mint it as NFT and share it with your friends!

Image

MLH Track - Vultr

We deployed our Python SMTP Microservice to a Vultr Cloud Compute instance using Docker. This allowed us to decouple the resource-intensive email and PDF processing from our Next.js frontend, ensuring the "Share" feature remains highly available and scalable.

45.63.77.115

MLH Track - Gemini

We integrated Gemini 2.5 Flash for two critical tasks:

Interview Intelligence: Powering the back-and-forth dialogue in Roblox.

Advanced OCR: Using Gemini's multimodal capabilities to extract structured text from resume PDFs (resume2.pdf) with 99% accuracy, which is then indexed in MongoDB.

This OCR feature is enabled in Roblox game, where player presses "P" button and having "resume2.pdf" in the Roblox folder, the gemini will OCR it and extract text data and put it into MongoDB Atlas.

The interview responses will also be evaluated by Gemini and constructive feedback and score on responses will be generated by Gemini and saved to MongoDB Atlas and will be fed into our dashboard.

Image

Backend endpoint for Gemini Interview AI is in app/api/chat/route.ts

MLH Track - MongoDB Atlas

All interview logs, NFT metadata, and OCR-extracted text are stored in MongoDB Atlas. This serves as our "Source of Truth," allowing the AI to remember past interview performances and provide personalized feedback over time.

MLH Track - Antigravity IDE

We used Antigravity IDE to develop the core feature of TTS of the virtual Interviewer. We maxed out the free credits, but truly enjoyed using Antigravity IDE.

Image

Challenges we ran into

The biggest hurdle was the Roblox-to-Localhost bridge. Since Roblox servers are in the cloud, they can't natively talk to a localhost:3000 server. We had to architect a local bridge that handled file system permissions to access the Roblox screenshots folder (/Users/hanlee/Pictures/Roblox) securely while piping that data to Gemini.

Accomplishments that we're proud of

We successfully built a "Hotkey-to-Blockchain" pipeline. Pressing a single key in a game triggers a sequence of: Local File Read -> Gemini OCR -> Pinata IPFS Upload -> Solana Mint -> MongoDB Entry. It happens in under 5 seconds!

What we learned

We learned the power of Hybrid Cloud Architecture. By combining Vercel (Frontend), Vultr (Microservices), and local hardware (Roblox Engine), we built a system that is both decentralized and physically integrated with the user's environment.

What's next for GatorPrep

We want to expand the "Gator" ecosystem by adding multi-player mock interviews, where one student plays the recruiter and the other the candidate, with Gemini acting as a real-time "Judge" to provide a joint "Collaboration Score" on-chain.

Built With

Share this project:

Updates