Interview-Analyzer is a tiny application designed to help you analyze and improve your job interview performance. It leverages AI to transcribe and analyze your interview recordings, providing actionable feedback.
- AI-Powered Analysis: Automatically evaluates your interview performance using GPT-4o via LangChain.
- Transcription: Seamlessly converts audio recordings into text using OpenAI Whisper.
- CV Management: Upload and manage CVs (PDF) with automatic text extraction for cross-referencing during analysis.
- Historical Analysis: Keeps a record of your past interviews and analyses for tracking progress.
- Re-analyze: Re-analyze interviews with different prompts or updated CVs.
- Secure Access: Username/password authentication with Redis-backed rate limiting.
- Streamlit: Interactive web interface.
- Django ORM: Database models and data access layer.
- LangChain: LLM orchestration and analysis logic.
- PostgreSQL: Persistent storage of transcripts, analyses, and CVs.
- Redis: Cache and authentication rate limiting.
- Docker: Consistent environment and easy deployment.
- Poetry: Dependency management.
- Ruff: Linting and formatting.
- Docker and Docker Compose installed on your machine.
- An OpenAI API Key.
-
Clone the repository:
git clone <repository_url> cd interview-analyzer
-
Configure environment variables:
cp .env.dist .env
Open
.envand fill in the required values:OPENAI_API_KEY: Your OpenAI API key.LOGIN_USER,LOGIN_PASSWORD: Credentials to log in to the app (defaults:admin/admin).
-
Build and install:
make install
-
Start the application:
make start
Run make help to see all available commands.
- Open your browser and navigate to
http://localhost:8501. - Log in using the credentials defined in
.env. - Analyze New Interview: Go to the Interview Analyzer page, upload an audio file (MP3, WAV, M4A, MP4), optionally attach a CV, and click Analyze. The system will transcribe and analyze it with step-by-step progress.
- View History: Use the sidebar to browse past interviews and review the AI's feedback.
- Manage CVs: Go to the Curriculum Vitae page to upload, view, edit, or delete CVs.
The project includes Adminer for easy database management.
- Access Adminer at
http://localhost:8080. - System: PostgreSQL.
- Server:
db. - Username/Password/Database: As defined in your
.envfile.

