Interview.io
Presenting your personal Interview Coach for improving interview skills through a range of interactive and AI-driven features.
Install / Use
/learn @abhrajit2004/Interview.ioREADME
Interview.io 🎓🧑💻
The project "AI-Powered Real-Time Interview Coach" is an innovative virtual platform designed to help users improve their interview skills through a range of interactive and AI-driven features.
This project has been made by all of our collaborators of Team Codeblooded & has been submitted for HackOdisha'24.
🚀 Live here - https://interview-io-six.vercel.app/
🏆 This project has won 1st Place in HackOdisha 2k24!!
🌟 Features
-
💻 Simulated Interview Environment : The platform provides a real-time or peer-to-peer interview experience, allowing users to practice in a lifelike scenario using their webcam and microphone. This helps users develop time management skills and offers a flexible and convenient.
-
🤔 Quiz Section: The quiz system generates dynamic questions based on the user's inputs, covering any domain. The adaptive difficulty feature adjusts the complexity of questions in real-time, making it suitable for users at different experience levels.
-
❓ AI-Based Q&A Section: In this section, users receive AI-Based real-time, context-specific interview questions based on their skill level. The AI adjusts the difficulty based on the quality of the user’s responses, ensuring a personalized learning experience.
-
🤵 User Profile: Each user has a profile that tracks personal information, professional background, core skills, and the number of completed or upcoming interviews. This helps users stay organized and prepared for their interviews.
-
🚀 Future Enhancements: Planned future improvements include a real-time notification system, enhanced quiz security, video call functionality that supports more participants, and better integration between the overview page and upcoming interviews.
🛠️ Tech Stack
- Frontend: Vite ReactJs ⚛️, Tailwind CSS 🎨, Tailwind 🔄, SCSS 🎭
- Backend: Node.js 🟢, Express 🚂
- Database: MongoDB 🍃
- AI Integration: Google Gemini API 🧠
- Testing: Postman 📮
- Deployment - Vercel & Render 🚀
- Socket.io - For the chat and video calling functionalities 💬
🚀 Getting Started Locally
Project Setup
-
Clone the repository:
git clone https://github.com/abhrajit2004/Interview.io.git
Frontend Setup
-
Navigate to frontend
cd frontend -
Install dependencies:
npm i -
Set up environment variables: Create a
.envfile in the frontend directory and add your required environment variables according to this format:VITE_API_URL='<your-backend-api-url'Format also present in the frontend folder in the file .env.example.frontend <br>
-
Start the development frontend server:
npm run dev
Backend Setup
-
Navigate to backend(In Another Terminal)
cd backend -
Install dependencies:
npm i -
Set up environment variables: Create a
.envfile in the backend directory and add your required environment variables according to this format:JWT_SECRET=<your-preferred-jwt-secret-key> MONGODB_URI=<your-mongodb-connection-string> MONGODB_URI1=<optional> GEMINI_API_KEY=<your-gemini-api-key> CLOUDINARY_API_KEY= CLOUDINARY_API_SECRET= CLOUDINARY_NAME= NODE_ENV=development PORT=3000Format also present in the backend folder in the file .env.example.backend <br>
-
Start the server:
npm run dev
🌐 API Endpoints
POST /api/v1/auth/signup: User registrationPOST /api/v1/auth/login: User loginPOST /api/v1/auth/logout: User logoutPOST /api/v1/auth/editUser: Edit user informationGET /api/v1/auth/getAuth: Get user authentication statusPOST /api/v1/auth/updateAvatar: Update user avatarPOST /api/v1/rooms/addroom/:roomID: Add a new roomPOST /api/v1/rooms/deleteroom/:roomID: Delete a roomGET /api/v1/rooms/getroom/:roomID: Get room informationPOST /api/v1/quiz/generate-id: Generate a quiz IDPOST /api/v1/quiz/generate-quiz: Generate a quizPOST /api/v1/quiz/save-answer: Save a quiz answerPOST /api/v1/quiz/evaluate-answer: Evaluate a quiz answerPOST /api/v1/quiz/terminate-quiz: Terminate a quiz sessionPOST /api/v1/questions/generate-questions: Generate questions for a quizPOST /api/v1/questions/chat: Interact with AI chatbot
😎 Members of our Team Codeblooded 👥
- Abhrajit Gupta - @abhrajitgupta
- Shuvadipta Das - @shuvadiptadas
- Ankita Sikdar - @ankitasikdar
- Megha Karmakar - @meghakarmakar
🤝 Contributing
We welcome contributions to this project! Please feel free to submit issues, fork the repository and send pull requests!
📄 License
This project is licensed under: MIT licensed
🙏 Acknowledgements
- Gemini for providing the AI API
- MongoDB for the database solution
- Vercel for frontend deployment
- Render for backend deployment
Have a great job cracking journey with Interview.io! 🎓✨
Related Skills
node-connect
349.2kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
109.5kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
349.2kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
349.2kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
