https://github.com/thedarkking01/ai-interview-prep
We build a real-time AI-driven mock interview platform with Next.js and Vapi AI, offering personalized prep sessions just for you.
https://github.com/thedarkking01/ai-interview-prep
firebase nextjs15 tailwindcss-v4 vapi-ai
Last synced: about 2 months ago
JSON representation
We build a real-time AI-driven mock interview platform with Next.js and Vapi AI, offering personalized prep sessions just for you.
- Host: GitHub
- URL: https://github.com/thedarkking01/ai-interview-prep
- Owner: thedarkking01
- License: mit
- Created: 2025-03-24T14:02:28.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-05-26T17:07:48.000Z (about 1 year ago)
- Last Synced: 2025-05-26T18:24:42.450Z (about 1 year ago)
- Topics: firebase, nextjs15, tailwindcss-v4, vapi-ai
- Language: TypeScript
- Homepage: https://ai-preperation.vercel.app/
- Size: 1 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# AI Preparation - Mock Interview Practice
Welcome to **AI Preparation**, a modern and interactive platform designed to help you prepare for technical mock interviews with the assistance of AI technologies. This platform utilizes AI-powered voice assistants, feedback systems, and personalized coaching to ensure youβre ready for any interview scenario.
---
### π½ WEBSITE DIAGRAM

---
## π Features
- **Authentication**: Sign Up and Sign In using email/password authentication, managed by Firebase.
- **Create Interviews**: Effortlessly generate job interview questions with the help of VAPI AI Voice Assistant and Google Gemini.
- **Get Feedback from AI**: Conduct the interview with the AI voice assistant and receive instant feedback based on your conversation.
- **Modern UI/UX**: A sleek, intuitive, and user-friendly interface to ensure a smooth experience throughout your interview process.
- **Interview Page**: Participate in AI-driven interviews with real-time feedback and a detailed interview transcript.
- **Dashboard**: Manage, track, and review all your interviews from one central location with easy navigation.
- **Responsiveness**: Fully responsive design that ensures a seamless experience across all devices, from desktop to mobile.
- **Code Architecture & Reusability**: Built with scalability in mind for future enhancements and ease of maintenance.
---
## π οΈ Tech Stack
- **Next.js (Latest)**: A modern React framework for building fast and scalable web applications.
- **VAPI AI**: AI-powered voice assistant for interactive mock interviews.
- **ShadCN/UI**: A UI component library to provide a sleek and consistent design.
- **Google Gemini**: Advanced AI capabilities for intelligent feedback and coaching.
- **Zod**: Type-safe validation library for data integrity.
- **Firebase**: Provides user authentication and real-time database services.
- **Tailwind CSS**: A utility-first CSS framework for creating custom designs quickly.
---
## βοΈ Set Up Environment Variables
To get started with the project, you need to configure environment variables for Firebase, VAPI, and Google Gemini. Follow the steps below:
1. Create a new file named `.env.local` in the root directory of your project.
2. Add the following environment variables to the `.env.local` file:
```env
NEXT_PUBLIC_VAPI_WEB_TOKEN=
NEXT_PUBLIC_VAPI_WORKFLOW_ID=
GOOGLE_GENERATIVE_AI_API_KEY=
NEXT_PUBLIC_BASE_URL=
NEXT_PUBLIC_FIREBASE_API_KEY=
NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN=
NEXT_PUBLIC_FIREBASE_PROJECT_ID=
NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET=
NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID=
NEXT_PUBLIC_FIREBASE_APP_ID=
FIREBASE_PROJECT_ID=
FIREBASE_CLIENT_EMAIL=
FIREBASE_PRIVATE_KEY=""
```
3. Replace the placeholder values with your actual Firebase and VAPI credentials.
---
## π Running the Project
1. Clone this repository to your local machine.
```bash
git clone https://github.com/thedarkking01/AI-Interview-Prep.git
cd interview
```
2. Install the required dependencies:
```bash
npm install
```
3. Run the development server:
```bash
npm run dev
```
4. Open your browser and go to [http://localhost:3000](http://localhost:3000) to view the project.
---
## π Snippets
Here are some important code snippets for reference:
### 1. **globals.css**
This file contains global styles for the project, ensuring consistent design across components.
```css
/* global styles for the app */
```
### 2. **lib/utils.ts**
Utility functions to handle various tasks across the application.
```typescript
// utility functions
```
### 3. **Generate Questions Prompt** (located in `/app/api/vapi/generate/route.tsx`)
```tsx
// API route for generating interview questions
```
### 4. **Generate Feedback Prompt** (located in `lib/actions/general.action.ts`)
```typescript
// Logic for generating interview feedback
```
### 5. **Display Feedback** (located in `app/(root)/interview/[id]/feedback/page.tsx`)
```tsx
// Component for displaying feedback after an interview
```
---
## π§ͺ Dummy Interviews
You can try conducting dummy interviews with the AI voice assistant, simulating various technical interview scenarios. Explore different domains and get customized feedback for each session.
---
## π€ Contributing
Feel free to fork this repository and create a pull request to contribute improvements or fixes. All contributions are welcome!
---
## π License
This project is licensed under the MIT License - see the [MIT LICENSE](https://github.com/thedarkking01/AI-Interview-Prep/blob/main/LICENSE) file for details.
---