A comprehensive, 100% local and open-source interview preparation platform that combines traditional text-based interviews with advanced speech-to-text capabilities and AI-powered evaluation.
- Text Mode: Traditional typing interface with auto-save
- Speech Mode: Voice recording with automatic transcription
- Hybrid Mode: Combine speech recording with text editing
- Real-time Voice Analysis: Speaking pace, pauses, filler words
- Local Whisper Integration: Offline speech-to-text transcription
- Voice Analysis: Advanced audio processing with Librosa
- AI-Powered Evaluation: Comprehensive answer assessment
- Privacy First: No external APIs, complete data privacy
- Customizable Sessions: Role-based questions, difficulty levels
- Progress Tracking: Session history and analytics
- Resume Analysis: AI-powered skill extraction and coaching
- Performance Analytics: Detailed feedback and improvement suggestions
- Python 3.10+
- Node.js 18+
- PostgreSQL 13+
- Redis
- FFmpeg
- Clone the repository
git clone https://github.com/your-username/ai-powered-interview-coach.git
cd ai-powered-interview-coach- Backend Setup
cd backend
pip install -r requirements.txt
cp .env.example .env
# Edit .env with your database credentials
alembic upgrade head
python -m uvicorn app.main:app --reload- Frontend Setup
cd frontend
npm install
npm run dev- Access the Application
- Frontend: http://localhost:5173
- Backend API: http://localhost:8000
- API Documentation: http://localhost:8000/docs
Frontend (React + TypeScript)
↕ REST API
Backend (FastAPI + Python)
↕ Database
PostgreSQL + Redis
↕ AI Services
Local Whisper + Librosa + AI Agents
- Frontend: React 18, TypeScript, Material-UI, Vite
- Backend: FastAPI, SQLAlchemy, PostgreSQL, Redis
- AI: Whisper (speech-to-text), Librosa (voice analysis)
- Media: FFmpeg, PyAV for audio/video processing
- Complete Project Presentation - Comprehensive overview
- Quick Start Guide - Step-by-step setup
- Speech System Guide - Voice recording features
- API Documentation - Interactive API docs
- Register/Login to your account
- Click "Start New Interview"
- Configure session parameters:
- Role: Software Engineer, Data Scientist, etc.
- Difficulty: Easy, Medium, Hard, Expert
- Questions: 1-20 questions
- Categories: Technical, Behavioral, System Design, etc.
- Text Mode: Type your answers with auto-save
- Speech Mode: Record voice answers with automatic transcription
- Hybrid: Record speech and edit the transcribed text
- Comprehensive AI evaluation with scores
- Voice analysis metrics (pace, pauses, clarity)
- Detailed improvement suggestions
- Progress tracking over time
# Backend tests
cd backend
pytest
# Frontend tests
cd frontend
npm testcd backend
alembic revision --autogenerate -m "Description"
alembic upgrade head# Python formatting
black backend/
flake8 backend/
# TypeScript linting
cd frontend
npm run lint- User authentication and management
- Interview session management
- Dual-mode interview system (text + speech)
- Speech-to-text processing with Whisper
- Voice analysis and evaluation
- Resume analysis and AI coaching
- Analytics and progress tracking
- Data export and reporting
- Multi-language support
- Advanced AI models
- Mobile applications
- Team collaboration features
We welcome contributions! Please see our Contributing Guidelines for details.
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- OpenAI Whisper for speech-to-text capabilities
- Librosa for audio analysis
- FastAPI for the excellent web framework
- React and Material-UI for the frontend
- Issues: GitHub Issues
- Discussions: GitHub Discussions
- Documentation: Project Wiki
Made with ❤️ for better interview preparation
Empowering job seekers with AI-driven interview coaching while maintaining complete privacy and local processing.