Got an interview coming up? Let PrepAI help you practice and crush it. This is a full-stack app built with Spring Boot and modern web tech that uses AI to give you real-time feedback on your interview responses.
Think of it as having a 24/7 interviewer in your pocket. You answer interview questions, and the AI analyzes your responses and gives you actionable feedback to improve. Pretty cool, right?
- Java 11+
- MySQL
- Node.js (if running frontend separately)
-
Set up the database
CREATE DATABASE prep_ai_db; -
Configure your DB credentials in
application.properties:spring.datasource.username=your_username spring.datasource.password=your_password
-
Run it
- Open
spring-boot-backend/in IntelliJ or Eclipse - Run
PrepAiApplication.java - Server starts at
http://localhost:8080
- Open
Start here. Simple, clean sign-in to access your practice sessions.
Your hub. Track your progress, see completed interviews, and jump into new sessions.
Answer the AI-generated interview questions. The more you practice, the better you get.
Get detailed feedback on your answer right after you submit. The AI breaks down what you did well and where to improve.
Look back at all your past interviews. Track your improvement over time.
Frontend: HTML/CSS/JavaScript for a smooth user experience
Backend: Spring Boot handles all the logic
- Controllers route your requests
- Services manage the interview flow and AI integration
- JPA repositories talk to MySQL
AI Integration: Powered by Google's Gemini API
- Generates relevant interview questions
- Analyzes your answers in real-time
- Provides semantic feedback on how well you answered
PrepAI/
├── prepai-frontend/ # Your UI (HTML/CSS/JS)
│ ├── index.html
│ ├── interview.html
│ ├── dashboard.html
│ ├── history.html
│ └── js/ # Logic for frontend
├── spring-boot-backend/ # The engine
│ └── src/main/java/com/prepai/
│ ├── controller/ # Handles HTTP requests
│ ├── service/ # Business logic & AI calls
│ ├── model/ # Data structures
│ └── repository/ # Database access
└── images/ # Screenshots (this readme's best friends)
| Part | Technology |
|---|---|
| Backend | Spring Boot, Spring Data JPA |
| Frontend | HTML5, CSS3, Vanilla JavaScript |
| Database | MySQL |
| AI | Google Gemini API |
| Build | Maven |
The app generates questions based on common interview patterns and your chosen topic. Each session is independent, so you can practice different areas.
After you submit your answer:
- Gemini analyzes your response
- Checks for key points and clarity
- Rates your answer quality
- Gives you specific tips to do better next time
It's like having a mock interviewer who actually cares about your improvement.
cd spring-boot-backend
mvn clean install
mvn spring-boot:runThe frontend is already in prepai-frontend/ - just open the HTML files in your browser or serve them with a local server.
Interview Sessions: Stores your practice sessions with timestamps and results
Questions: Pre-populated with interview questions across different domains
Responses: Your answers get saved here so you can review them later
- Practice regularly - The more interviews you do, the better the AI can track your progress
- Read the feedback carefully - It's not just a score, it's actual advice to get better
- Review your history - You'll be surprised how much you improve over time
- Try different topics - Don't just stick to one area
- "We integrated Gemini AI using REST APIs to analyze interview responses in real-time"
- "Spring Data JPA abstracts the database layer, letting us work with data as Java objects"
- "The MVC architecture keeps our concerns separated: Spring Boot handles logic, MySQL handles data"
"I can't connect to the database"
- Check MySQL is running
- Verify credentials in
application.properties - Make sure the
prep_ai_dbdatabase exists
"The AI isn't giving feedback"
- Check your Gemini API key is configured
- Make sure you have internet connection
- Look at the backend logs for errors
Ideas to make this even better:
- Add video recording for practice interviews
- Implement different difficulty levels
- Create industry-specific question banks
- Add collaborative practice with friends
Built for learning. Feel free to use and modify.
Good luck with your interviews! 🎯




