Real-time voice-enabled AI interview preparation platform powered by AWS Bedrock, featuring live conversation practice, code execution, CV analysis, and comprehensive performance analytics.
- Voice Conversations - Real-time Speech-to-Text and Text-to-Speech via WebSocket streaming
- 8 Interview Types - Google/Amazon/Microsoft SDE, AWS/Azure/GCP Solutions Architect, Behavioral, Coding
- Live Code Editor - Monaco editor with code execution, test cases, and quality metrics
- CV Analysis - PDF/DOCX parsing with AWS Textract and industry-specific skill extraction
- Performance Analytics - Percentile benchmarks, trend analysis, and detailed reports
- AI Agent - Claude 3 Haiku with 3 specialized Lambda action groups
cd backend
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
pip install -r requirements.txt
uvicorn app.main:app --reload --host 0.0.0.0 --port 8000cd frontend
npm install
npm run devcd lambda-tools
sam build
sam deploy --guided --capabilities CAPABILITY_NAMED_IAM- Create agent with Claude 3 Haiku model
- Add action groups:
CodeExecutor,CVAnalyzer,PerformanceEvaluator - Attach Lambda ARNs from SAM deployment output
- Update agent instructions (see
condensed-agent-instructions.txt)
┌─────────────┐ WebSocket ┌──────────────┐
│ Next.js │ ◄──────────────────► │ FastAPI │
│ Frontend │ │ Backend │
└─────────────┘ └───────┬──────┘
│
┌───────────────────────────┼────────────────┐
│ │ │
┌────▼────┐ ┌──────▼─────┐ ┌──────▼──────┐
│ Bedrock │ │ S3 │ │ Lambda │
│ Agent │ │ Storage │ │ Functions │
└─────────┘ └────────────┘ └─────────────┘
- Frontend: Next.js 15.5, React 19, TypeScript, TailwindCSS, Monaco Editor, Recharts
- Backend: FastAPI, Python 3.12, WebSockets, Boto3
- AI/ML: AWS Bedrock (Claude 3 Haiku), AWS Textract
- Serverless: AWS Lambda, SAM CLI
- Storage: AWS S3
Visit http://localhost:3000/demo to explore:
- CV Upload & Analysis
- Code Editor with Test Runner
- Performance Dashboard & History
- Sessions:
POST /api/sessions,GET /api/sessions/{id},DELETE /api/sessions/{id} - Interviews:
POST /api/interviews/{id}/start,POST /api/interviews/{id}/upload-cv - Code:
POST /api/code/execute,GET /api/code/{id}/submissions - Analytics:
GET /api/analytics/aggregate,GET /api/analytics/benchmarks/{type} - WebSocket:
ws://localhost:8000/ws/{session_id}
# Backend (.env)
AWS_REGION=us-east-1
S3_BUCKET_USER_DATA=prepai-user-data
BEDROCK_AGENT_ID=your-agent-id
BEDROCK_AGENT_ALIAS_ID=your-alias-id
# Frontend (.env.local)
NEXT_PUBLIC_API_URL=http://localhost:8000
NEXT_PUBLIC_WS_URL=ws://localhost:8000Built with AWS Bedrock Agents | Real-time Voice AI Interview Practice