- โ Resume Upload (PDF & DOCX support)
- โ Keyword-Based Question Selection
- โ Text-Based Interview Simulation
- โ Simple Feedback System
- โ Clean Web Interface
- โ Demo Mode with Sample Data
- ๐ MongoDB Integration (In Progress)
- ๐ง Advanced AI Resume Parsing
- ๐ฌ Dynamic AI Question Generation (LLMs)
- ๐ AI-Powered Answer Analysis
- ๐ Personalized Learning Recommendations
- ๐ User Dashboards & Progress Tracking
- ๐ Multi-language Supportinterview preparation system.

โ โโโ ๐ templates/ # HTML templates
โ โโโ ๐ upload.html # Resume upload interface
โ โโโ ๐ questions.html # Interview questions display
โ โโโ ๐ feedback.html # Feedback and results page
โโโ ๐ media/ # Uploaded files storage
โโโ ๐ nexora_project/ # Django project configuration
โโโ ๐ manage.py # Django project management
โโโ ๐ requirements.txt # Project dependencies
โโโ ๐ README.md # Project documentation
```adge/python-v3.8+-blue.svg)
## Features
- Resume upload
- Question generation
- Interview simulation
- AI feedback
**Your Personal AI-Powered Interview Co-Pilot**
## Installation
```bash*Nexora is a smart interview preparation system designed to provide a personalized, resume-based mock interview experience. It bridges the gap between generic practice questions and real-world interviews by generating tailored questions, simulating interview sessions, and delivering structured, AI-enhanced feedback.*
pip install -r requirements.txt
python manage.py runserver[๏ฟฝ Features](#-features) โข
```[๐ Quick Start](#-quick-start) โข
[๐ Documentation](#-documentation) โข
## Usage[๐ค Contributing](#-contributing) โข
1. Upload resume[๐ฅ Team](#-team)
2. Answer questions
3. Get feedback</div>
## TODO---
- Implement MongoDB integration
- Add resume parsing## ๏ฟฝ๐ Overview
- Integrate AI feedback system
### The Problem
Traditional interview preparation is **stressful**, **inefficient**, and **impersonal**. Candidates practice with generic questions that don't reflect their unique skills and experiences listed on their resume. This leads to:
- ๐ Lack of confidence in discussing personal background
- โก Inefficient preparation time
- ๐ฏ Poor alignment with actual interview questions
- ๐ No structured feedback mechanism
### Our Solution
Nexora tackles this by creating a **dynamic and personalized preparation loop**:
1. **๐ Resume Analysis** - Intelligently parses candidate's resume to understand skills, projects, and experience
2. **โ Tailored Question Generation** - Generates relevant questions based on parsed resume data
3. **๐ญ Interview Simulation** - Provides a clean, text-based interface to simulate real interviews
4. **๐ค AI-Powered Feedback** - Analyzes answers to provide structured feedback and improvement areas
---
## โจ Features
<table>
<tr>
<td width="50%">
### ๏ฟฝ Current Features (MVP)
- โ
**Resume Upload** (PDF & DOCX support)
- โ
**Keyword-Based Question Selection**
- โ
**Text-Based Interview Simulation**
- โ
**Simple Feedback System**
- โ
**Basic Report Generation**
- โ
**Clean Web Interface**
</td>
<td width="50%">
### ๐ก Upcoming Features (AI Roadmap)
- ๏ฟฝ **Advanced AI Resume Parsing**
- ๏ฟฝ **Dynamic AI Question Generation (LLMs)**
- ๏ฟฝ **AI-Powered Answer Analysis**
- ๏ฟฝ **Personalized Learning Recommendations**
- ๏ฟฝ **User Dashboards & Progress Tracking**
- ๐ฎ **Multi-language Support**
</td>
</tr>
</table>
---
## ๐ ๏ธ Tech Stack
<div align="center">
| Category | Technologies |
|----------|-------------|
| **Backend** |   |
| **Frontend** |    |
| **Document Processing** |   |
| **AI/ML** |   |
</div>
---
## ๐ Quick Start
### Prerequisites
-  or higher
- 
- 
### โก Installation
1. **Clone the repository**
```bash
git clone https://github.com/pwnjoshi/InterviewPrepAI.git
cd InterviewPrepAI
-
Create and activate virtual environment
# Windows python -m venv venv .\venv\Scripts\activate # macOS/Linux python3 -m venv venv source venv/bin/activate
-
Install dependencies
pip install -r requirements.txt
-
Run database migrations
python manage.py migrate
-
Start the development server
python manage.py runserver
-
Open your browser and navigate to
http://127.0.0.1:8000/
๐ You're all set! Start uploading your resume and practicing interviews.
nexora_project/
โโโ ๐ interview/ # Main Django app
โ โโโ ๐ views.py # Request handlers and business logic
โ โโโ ๐ urls.py # URL routing configuration
โ โโโ ๐ resume_parser.py # PDF/DOCX parsing functionality
โ โโโ ๐ templates/ # HTML templates
โ โโโ ๐ upload.html # Resume upload interface
โ โโโ ๐ questions.html # Interview questions display
โ โโโ ๐ feedback.html # Feedback and results page
โโโ ๐ data/ # Data storage
โ โโโ ๐ question_bank.json # Question database and mappings
โโโ ๐ manage.py # Django project management
โโโ ๏ฟฝ README.md # Project documentation
- Setup Django project structure
- Implement resume parser for PDF/DOCX
- Create static question bank and selection logic
- Build web interface for interview simulation
- Develop basic feedback module
- MongoDB Integration (In Progress)
- Integrate advanced NLP for resume parsing
- Implement LLM for dynamic question generation
- Develop AI-powered semantic answer analysis
- Add user accounts and progress tracking
- Enhance UI/UX with modern design
- Deploy to cloud platform (AWS/Heroku)
- Multi-language interview support
- Video interview simulation
- Industry-specific question banks
- Integration with job portals
- Mobile application development
๐น Live Demo Coming Soon!
We're currently preparing an interactive demo showcasing the complete interview workflow. Stay tuned!
- Resume Upload:
/upload/- Handles PDF/DOCX file uploads - Question Generation:
/questions/- Displays tailored interview questions - Feedback System:
/feedback/- Provides detailed analysis and suggestions
# Example: Resume parsing
from interview.resume_parser import ResumeParser
parser = ResumeParser()
skills = parser.extract_skills("path/to/resume.pdf")
print(f"Detected skills: {skills}")We welcome contributions from the community! Here's how you can help:
- Check existing issues to avoid duplicates
- Create a detailed bug report with reproduction steps
- Include system information and error logs
- Open an issue with the "enhancement" label
- Provide a clear description of the proposed feature
- Explain the use case and expected behavior
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature - Commit your changes:
git commit -m 'Add amazing feature' - Push to the branch:
git push origin feature/amazing-feature - Open a Pull Request
Team NEXORA (PY-III-T031)
This project is licensed under the MIT License - see the LICENSE file for details.
- Thanks to all contributors who helped shape this project
- Inspired by the need for better interview preparation tools
- Built with โค๏ธ for the developer community



