Skip to content

JobPrep AI is a cutting-edge interview preparation platform that leverages artificial intelligence to help job seekers excel in their interviews. Built with modern web technologies and powered by advanced AI, this application provides personalized interview simulations, real-time feedback, and comprehensive performance analytics.

License

Notifications You must be signed in to change notification settings

jerry-619/JobPrep-AI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

5 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

JobPrep AI - Your AI-Powered Interview Preparation Partner

Overview

JobPrep AI is a cutting-edge interview preparation platform that leverages artificial intelligence to help job seekers excel in their interviews. Built with modern web technologies and powered by advanced AI, this application provides personalized interview simulations, real-time feedback, and comprehensive performance analytics.

๐ŸŒŸ Key Features

For Candidates

  • Personalized Interview Sessions
    • Role-specific interview questions
    • Adjustable difficulty levels (Easy, Medium, Hard)
    • Customizable number of questions
    • Technical and behavioral question mix

AI-Powered Features

  • Real-time Speech Recognition

    • Natural voice-based responses
    • Automatic speech-to-text conversion
    • Seamless interview experience
  • Intelligent Feedback System

    • Instant answer evaluation
    • Detailed feedback on responses
    • Score-based assessment
    • Improvement suggestions

Analytics & Reporting

  • Interactive Dashboard

    • Overall performance metrics
    • Interview history tracking
    • Score distribution analysis
    • Role-based statistics
  • Comprehensive Reports

    • Detailed interview summaries
    • Question-wise feedback
    • Downloadable reports
    • Performance trends

๐Ÿ› ๏ธ Technical Stack

Backend Technology

- Node.js & Express.js - Server framework
- MongoDB - Database
- JWT - Authentication
- OpenAI API - AI processing

Frontend Technology

- React.js - UI framework
- Redux Toolkit - State management
- Material-UI - Component library
- React Speech Recognition - Voice input
- Recharts - Data visualization

๐Ÿ“‹ Prerequisites

Before you begin, ensure you have the following installed:

  • Node.js (v14 or higher)
  • npm (v6 or higher)
  • MongoDB (v4.4 or higher)
  • Git

๐Ÿš€ Installation & Setup

  1. Clone the Repository
git clone https://github.com/jerry-619/JobPrep-AI.git
cd jobprep-ai
  1. Backend Setup
# Navigate to server directory
cd server

# Install dependencies
npm install

# Create .env file
touch .env
  1. Configure Environment Variables Create a .env file in the server directory with the following:
# Server Configuration
PORT=5000


# MongoDB Configuration
MONGODB_URI=mongodb+srv://your_username:your_password@cluster0.mongodb.net/interview-ai

# JWT Configuration
JWT_SECRET=your_secure_jwt_secret_key

# OpenAI Configuration
OPENAI_API_KEY=your_openai_api_key
OPENAI_BASE_URL=https://api.sree.shop/v1
MODEL_NAME=your_model_name
  1. Frontend Setup
# Navigate to client directory
cd ../client

# Install dependencies
npm install
  1. Start Development Servers
# Start backend (from server directory)
npm run server

# Start frontend (from client directory)
npm start

๐Ÿ“š API Documentation

Authentication Endpoints

POST /api/auth/register
- Register new user
- Body: { name, email, password }

POST /api/auth/login
- User login
- Body: { email, password }

GET /api/auth/user
- Get authenticated user
- Header: x-auth-token

Interview Endpoints

POST /api/interviews/generate
- Generate new interview
- Body: { role, difficulty, numQuestions }

GET /api/interviews/:id
- Get interview by ID
- Header: x-auth-token

POST /api/interviews/:id/answers
- Submit answer
- Body: { questionIndex, answer }

GET /api/interviews/:id/report
- Generate interview report
- Header: x-auth-token

GET /api/interviews
- Get user's interviews
- Header: x-auth-token

๐Ÿ“ Project Structure

jobprep-ai/
โ”œโ”€โ”€ client/
โ”‚   โ”œโ”€โ”€ public/
โ”‚   โ”‚   โ”œโ”€โ”€ index.html
โ”‚   โ”‚   โ””โ”€โ”€ manifest.json
โ”‚   โ””โ”€โ”€ src/
โ”‚       โ”œโ”€โ”€ components/
โ”‚       โ”‚   โ”œโ”€โ”€ ErrorBoundary.jsx
โ”‚       โ”‚   โ”œโ”€โ”€ Header.jsx
โ”‚       โ”‚   โ”œโ”€โ”€ Loading.jsx
โ”‚       โ”‚   โ”œโ”€โ”€ Navbar.jsx
โ”‚       โ”‚   โ””โ”€โ”€ ProtectedRoute.jsx
โ”‚       โ”œโ”€โ”€ pages/
โ”‚       โ”‚   โ”œโ”€โ”€ Auth.jsx
โ”‚       โ”‚   โ”œโ”€โ”€ Dashboard.jsx
โ”‚       โ”‚   โ”œโ”€โ”€ Home.jsx
โ”‚       โ”‚   โ””โ”€โ”€ Interview.jsx
โ”‚       โ”œโ”€โ”€ features/
โ”‚       โ”‚   โ””โ”€โ”€ auth/
โ”‚       โ”‚       โ””โ”€โ”€ authSlice.js
โ”‚       โ””โ”€โ”€ utils/
โ”‚           โ””โ”€โ”€ api.js
โ””โ”€โ”€ server/
    โ”œโ”€โ”€ middleware/
    โ”‚   โ””โ”€โ”€ auth.js
    โ”œโ”€โ”€ models/
    โ”‚   โ”œโ”€โ”€ Interview.js
    โ”‚   โ””โ”€โ”€ User.js
    โ”œโ”€โ”€ routes/
    โ”‚   โ”œโ”€โ”€ auth.js
    โ”‚   โ””โ”€โ”€ interviews.js
    โ”œโ”€โ”€ utils/
    โ”‚   โ””โ”€โ”€ openAiUtils.js
    โ”œโ”€โ”€ .env
    โ”œโ”€โ”€ package.json
    โ””โ”€โ”€ server.js

๐Ÿ”ง Configuration Options

Server Configuration

  • PORT: Server port (default: 5000)

MongoDB Configuration

  • MONGODB_URI: MongoDB connection string
  • Database name: interview-ai
  • Collections: users, interviews

JWT Configuration

  • JWT_SECRET: Secret key for token generation
  • Token expiration: 24 hours

OpenAI Configuration

  • OPENAI_API_KEY: API key for OpenAI
  • OPENAI_BASE_URL: Base URL for API requests
  • MODEL_NAME: AI model selection

๐Ÿค Contributing

  1. Fork the repository
  2. Create your feature branch
git checkout -b feature/YourFeature
  1. Commit your changes
git commit -m 'Add some feature'
  1. Push to the branch
git push origin feature/YourFeature
  1. Open a Pull Request

๐ŸŒŸ Special Thanks

Special thanks to sree.shop for providing exceptional API support for this project. Their reliable and powerful API services have been instrumental in making JobPrep AI a reality.

๐Ÿ“ง Support

For technical support or inquiries, please contact:

๐Ÿ“„ License

This project is licensed under the MIT License. See the LICENSE file for details.

๐Ÿ‘ฅ Authors & Contributors

  • Project Lead: [Fardeen Beigh]

๐Ÿ™ Acknowledgments

  • sree.shop - For providing API infrastructure

๐Ÿ”„ Version History

  • v1.0.0 (Current)
    • Initial release
    • Core interview features
    • AI-powered feedback system
    • Basic analytics dashboard

๐Ÿ”ฎ Future Enhancements

  • Video interview capabilities
  • Industry-specific question banks
  • Mock interview scheduling
  • Peer review system
  • Advanced analytics and insights
  • Mobile application

About

JobPrep AI is a cutting-edge interview preparation platform that leverages artificial intelligence to help job seekers excel in their interviews. Built with modern web technologies and powered by advanced AI, this application provides personalized interview simulations, real-time feedback, and comprehensive performance analytics.

Topics

Resources

License

Stars

Watchers

Forks