An AI-powered interview assistant that provides real-time transcription and intelligent responses during technical interviews, now supporting both OpenAI and Gemini models.
- 🎙️ Real-time voice transcription for both interviewer and candidate
- 🤖 AI-powered responses with conversation context awareness, powered by configurable AI models (OpenAI or Gemini)
- 💻 Code formatting and syntax highlighting
- ⏱️ Configurable automatic silence detection for question submission
- 📚 Question history with combined query capability
- ⚙️ Configurable settings for AI models, API keys, response length, and system prompts
- 🔄 Support for various Gemini models, including experimental and thinking versions
- 📏 Configurable response length (concise, medium, lengthy)
- Frontend: React, Redux, Material-UI
- AI Services: OpenAI GPT, Google Gemini, Azure Cognitive Services (Speech)
- Build Tools: npm
- Other Libraries: React Markdown, Highlight.js
- Node.js (v18+)
- npm (v9+)
- OpenAI API key: get your OpenAI key OpenAI key
- Gemini API key: get your Gemini key from Google AI Studio. Get a free gemini api key here
- Azure Speech Service subscription key: You can get a key with a free trial Get your Azure key
-
Clone the repository
git clone [https://github.com/hariiprasad/interviewcopilot.git](https://github.com/hariiprasad/interviewcopilot.git) cd interviewcopilot -
Install dependencies
npm install
-
Run the development server
npm run dev
-
Access the application
http://localhost:3000
- Open the Settings dialog (⚙️ icon in header)
- Enter your API credentials:
- OpenAI API Key (if using OpenAI models)
- Gemini API Key (if using Gemini models)
- Azure Speech Service Key
- Azure Region
- Configure preferences:
- AI Model (OpenAI or Gemini models)
- System Prompt
- Auto-Ask mode
- Manual Mode
- Response length (concise, medium, lengthy)
- Silence Timer Duration
-
System Audio Panel (Left)
- Start/Stop system audio capture
- View/edit interviewer questions
- Question history management
-
Response Panel (Center)
- Real-time AI responses
- Code formatting and syntax highlighting
- Previous response history
- Auto-scroll toggle
-
Microphone Panel (Right)
- Start/Stop candidate audio capture
- Manual mode toggle
- Candidate response submission
- Auto-Ask Mode: Automatically submit questions after a configurable period of silence.
- Manual Mode: Type and submit candidate responses manually.
- Combine Questions: Select multiple questions from history for combined analysis.
- Real-time Transcription: Simultaneous speaker recognition and transcription.
- Configurable AI Models: Choose between OpenAI and various Gemini models.
- Response Length Control: Tailor the length of AI-generated responses.
Common Issues:
-
Audio Permissions
- Ensure browser has microphone access
- Refresh page if permissions are denied
-
API Errors
- Verify API keys in settings
- Check network connectivity
- Ensure proper Azure region configuration
- Ensure correct API key is provided for the selected AI model
-
Transcription Issues
- Speak clearly with minimal background noise
- Verify Azure Speech Service subscription
We welcome contributions! Please follow these steps:
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- OpenAI for their GPT models
- Google for their Gemini models
- Microsoft Azure Cognitive Services
- Material-UI team for UI components
- React community for awesome tools