A smart, AI-powered chatbot built to help users practice interview questions in a personalized way. It generates questions based on selected roles (Technical, HR) and difficulty levels (Easy, Medium, Hard) using OpenRouter’s AI models like GPT-3.5 and Claude-3. Built entirely with React, this app is fast, responsive, and designed to provide a near real-interview experience — without needing a human interviewer.
The idea behind Virtual Interviewer is simple: use AI to make interview practice smarter, easier, and more flexible.
Instead of preparing from static question sets, users get fresh, dynamic questions generated on the fly based on their selected role and difficulty — powered by OpenRouter.
Whether brushing up on technical questions or preparing for HR rounds, this app gives you a virtual interviewer right in your browser.
👉 https://intervbot.vercel.app
- Role and difficulty-based question generation
- Supports multiple AI models (GPT-3.5, Claude-3)
- Clean, fast, and responsive UI
- Works seamlessly in the browser
- Uses OpenRouter API with a free key for open access
- Currently uses a free OpenRouter API key, accessible to everyone.
- Occasional incomplete or inaccurate responses.
- Some responses may be delayed or inconsistent.
- For best performance, replace with your own API key if available.
Area | Tools / Libraries |
---|---|
Frontend | React (Vite), JavaScript |
Styling | CSS, Flexbox |
AI & Backend | OpenRouter API (GPT/Claude) |
Hosting | Vercel |
Build Tools | Node.js, npm |
Deployment | GitHub + Vercel CI/CD |
Challenges Faced:
- Free OpenRouter plan sometimes returned broken/empty responses — implemented loading states, error fallbacks, and better UX.
- Needed multiple AI models for different scenarios (Claude for general/HR, GPT-3.5 for technical) — dynamic switching logic was tricky.
- PWA conversion for Android initially showed a white screen — fixed service workers and asset paths.
- Cross-device responsiveness required manual tweaking for mobile, tablet, and desktop.
- Frequent CORS issues when switching between local and deployed environments — careful handling of environment variables.
- Vercel deployment smooth, but
.env
files and build configs required trial and error.
What I Learned:
- Working with multiple AI models through a single API
- Real-time data fetching and state management in React
- Structuring and optimizing a frontend project
- Going from idea → development → live → mobile-ready
- Debugging and adapting to third-party API quirks
👨💻 Made By: Made with ❤️ by Asim Husain www.asimhusain.dev
📄 License:
This project is licensed under the MIT License — feel free to fork, modify, or build upon it!
Prerequisites: Node.js and npm installed
Step 1: Clone the repository
git clone https://github.com/asimhusain-ai/Smart-Virtual-Interviewer.git
cd Project-Name
Step 2: Install dependencies
npm install
Step 3: Run the application locally
npm start
Open your browser and go to http://localhost:3000 to see the app running