InterviewAce is a full-stack MERN application designed to streamline job interview preparation and execution. It supports one-to-one, written, and profile-based interviews, leveraging AI for question generation, speech processing, and advanced analytics for answer evaluation, sentiment, and emotion analysis.
- Secure user authentication with JWT (JSON Web Tokens)
- One-to-One Interviews
- Written Interviews
- Profile-Based Interviews (includes resume and skills analysis via PDF parsing)
- Powered by Groq API (
llama3-70b-8192
model) - Tailored questions based on:
- Job role
- Job type (Full-Time / Intern)
- Interview mode
- Additionally, Profile-based interviews utilize parsed resume and skills
- Speech-to-text and text-to-speech with Web Speech API
- Dedicated page for user profile updates and career goals
- Review past interview answers
- Detailed performance breakdown and analytics
- Similarity scoring using Hugging Face
sentence-transformers/all-MiniLM-L6-v2
- Clarity scoring
- Sentiment analysis of responses
- Facial emotion detection via
dima806/facial_emotions_image_detection
- Provides:
- Primary emotion
- Confidence score
- Emotional context
- Movement detection
- Audio volume monitoring
- Speech clarity evaluation
- Background noise detection
- Lighting quality assessment
- Metrics bar plots and emotion pie charts using Plotly.js
Make sure you have the following installed:
- Node.js (v14 or higher)
- MongoDB (local or MongoDB Atlas)
- API Keys:
- Groq API Key from Groq
- Hugging Face API Key from Hugging Face
git clone https://github.com/your-username/interviewace.git
cd interviewace
Backend:
cd backend
npm install
Frontend:
cd ../frontend
npm install
Create a .env file in the backend directory with the following:
PORT=5000
MONGO_URI=<your-mongodb-uri>
JWT_SECRET=<your-jwt-secret>
GROQ_API_KEY=<your-groq-api-key>
HF_API_KEY=<your-huggingface-api-key>
Ensure your MongoDB instance is running locally or accessible via MONGO_URI.
Backend:
cd backend
node server.js
Runs at http://localhost:5000
Frontend:
cd ../frontend
npm start
Runs at http://localhost:3000
Visit http://localhost:3000 to use InterviewAce