InterviewForge is a freemium interview preparation tool for engineers and job-seekers. It provides repeatable, recruiter-style mock interviews with automated scoring and actionable feedback. The free tier supports unlimited text-based mock interviews; premium adds voice-based STT + LLM review, company packs and advanced reports (placeholders in this repo).
- Signup / Login (JWT)
- Start text mock interview sessions by role
- Automated deterministic scoring and structured feedback
- Session history and score breakdown stored locally (SQLite)
- Voice mock interviews with STT + LLM feedback (placeholder)
- Company-specific question packs (placeholder)
- Advanced analytics and downloadable reports (placeholder)
- Frontend: React (Vite)
- Backend: FastAPI, Uvicorn
- Database: SQLite (via SQLModel)
- Auth: JWT, bcrypt
-
Backend
cd backendpython -m venv .venvsource .venv/bin/activatepip install -r requirements.txtuvicorn app.main:app --reload --port 8000
-
Frontend
cd frontendnpm installnpm run dev(open http://localhost:5173)
POST /api/auth/signup— create accountPOST /api/auth/login— login (returns JWT)GET /api/questions?role=backend— list questionsPOST /api/sessions— start sessionGET /api/sessions/{id}/next-question— next questionPOST /api/sessions/{id}/answers— submit answer -> returns scoring- Premium endpoints under
/api/premium/*return locked responses.
- Integrate STT (Whisper / cloud STT), LLM (OpenAI) for rich feedback
- Billing & subscription integration
- Rich analytics dashboard and scheduled progress emails
- CI/CD and Docker deployment
MIT (see LICENSE)