An open API service indexing awesome lists of open source software.

https://github.com/wizardgeeky/ai-mock-interview-platform


https://github.com/wizardgeeky/ai-mock-interview-platform

Last synced: about 1 year ago
JSON representation

Awesome Lists containing this project

README

          

# 🚀 AI-Powered Mock Interview System

**Prepare for your next technical interview with our AI-powered platform!** This system simulates **real-world coding challenges** tailored to different job roles. Browse job listings, take **LeetCode-style mock interviews**, and get **instant AI feedback** on your code. The **Gemini AI-powered system** reviews your solutions, provides suggestions, and even offers optimized alternatives with explanations. Built with **Next.js**, this platform helps you enhance your coding skills and ace your next interview!

## 🌍 Live Demo
🔗 **[Try It Now](https://ai-mock-interview-platform-rose.vercel.app/)**

### Flow Chat

![image](https://github.com/user-attachments/assets/976b5cd9-657b-4d45-9fba-c7d6dbad42a0)

## 🔥 Key Features

✅ **🚀 Job Listings** – Browse multiple job roles and select one that fits your interest.
✅ **📝 Mock Interview Mode** – Get role-specific coding questions and solve them in a LeetCode-style environment.
✅ **💻 Interactive Code Editor** – Write and submit code in your preferred programming language (**Python, JavaScript, Java, etc.**).
✅ **🤖 AI Code Review** – Get **instant feedback**, suggestions for improvement, and optimized solutions.
✅ **📈 Skill Enhancement** – Learn from AI-suggested optimizations to improve your problem-solving techniques.
✅ **📜 Mock Interview History** – Track your past mock interviews and review your progress.
✅ **🔐 Data Security** – User data is encrypted using **AES Algorithm** for enhanced security.

---

## ⚙️ How It Works

1️⃣ **Select a Job** – Choose from a list of job openings.
2️⃣ **Start a Mock Interview** – Solve coding problems relevant to the selected job.
3️⃣ **Submit Your Code** – Get **AI-powered feedback** and suggestions.
4️⃣ **Improve & Learn** – Understand better approaches with **AI explanations**.

---

## 🛠️ Technology Stack

| **Category** | **Technologies Used** |
|-------------------|---------------------------------|
| **Frontend** | Next.js, Tailwind CSS, TypeScript |
| **Backend** | Node.js, MongoDB |
| **Authentication**| JWT & Secure Session Management |
| **AI Model** | Gemini AI |
| **Code Execution**| Judge0 Compiler |
| **Security** | AES Data Encryption |
| **Deployment** | Vercel |

---

## 🏗 Features & Modules

### 🔐 Authentication & User Management
✔️ **Create Account** – Users can sign up for a new account.
✔️ **Secure Login** – Authentication using JWT tokens.
✔️ **Forgot Password** – Reset password link sent via **email**.
✔️ **Update Password** – Change password securely.

### 🔄 Session Management
✔️ **JWT Token Authentication** – Secure user login sessions.
✔️ **Session Handling** – Maintain user sessions securely.
✔️ **Logout** – Users can log out and terminate active sessions.

### 🎯 AI Mock Interview System
✔️ **Select a Job** – Choose from available job listings.
✔️ **Generate Coding Challenge** – **Gemini AI** creates a job-relevant coding problem.
✔️ **LeetCode-Style Code Editor** – Interactive editor for writing and testing code.
✔️ **Code Submission & AI Review** – AI reviews the solution, suggests improvements, and provides optimized solutions.

### 📊 Mock Interview History
✔️ **Track Progress** – Users can review past mock interviews.

### 🔒 Data Security
✔️ **AES Encryption** – Securely store personal user data.

---

## 🛠 Installation & Setup

Follow these steps to set up the project locally:

### 1️⃣ Clone the Repository
```bash
git clone https://github.com/WizardGeeky/AI-Mock-Interview-Platform.git
cd AI-Mock-Interview-Platform
```

### 2️⃣ Install Dependencies
```bash
npm install
```

### 3️⃣ Set Up Environment Variables
Create a `.env` file in the root directory and add the following variables:
```
NEXT_PUBLIC_JUDGE0_API_URL=
NEXT_PUBLIC_RAPID_API_KEY=
NEXT_PUBLIC_GEMINI_API_KEY=
MONGODB_URI=
CIPHER_SECRET=
NEXT_PUBLIC_JWT_SECRET=
NEXT_PUBLIC_PERSONAL_EMAIL=
NEXT_PUBLIC_BURNER_PASSWORD=
```

### 4️⃣ Start the Development Server
```bash
npm run dev
```

---

## 📜 License
This project is licensed under the **MIT License**.