An advanced AI Interview Simulator featuring 5 unique personas, live code execution, and 8D scoring—complemented by ATS scoring and auto-apply tools.
0
stars
25
commits
TypeScript
primary language
Mar 19, 2026
updated
The Ultimate AI-Powered Semi-Auto Apply Job Portal & Interview Platform
🎯 Practice interviews with AI personas that push back.
📄 Beat ATS filters before you even hit apply.
⚡ Semi-auto apply to jobs in minutes, not hours.
| Feature | Description | Powered By |
|---|---|---|
| 📄 Resume ATS Scorer | Parses & grades resumes against benchmarks | Gemini 2.5 Flash |
| 🎤 AI Interview Simulation | Voice interviews with 5 AI personas | Groq STT + Edge TTS |
| 🔗 LinkedIn Optimizer | Keyword & headline suggestions | Gemini 2.5 Flash |
| ⚡ Semi-Auto Job Apply | Cover letters from job descriptions | Gemini 2.5 Flash |
| 📚 Prep Hub | Flashcards, DSA warm-ups, cheat sheets | LLM-generated |
| 💻 Live Code Execution | Run 5 languages in sandboxed env | Docker-in-Docker |
| 📊 8D Assessment Engine | Scores 8 dimensions in real-time | Custom LLM Pipeline |
| Persona | Warmth | Probing Style | Interaction Tone |
|---|---|---|---|
| Kind Mentor | High | Frequent hints | Supportive and encouraging |
| Tough Lead | Low | Deep, rigorous probing | High standards, expects optimal solutions |
| Tricky HR | Medium | Tests emotional intelligence | Casual, looks for conflict resolution skills |
| Silent Observer | Low | Minimal interaction | High pressure, tests composure |
| Collaborative Peer | High | Brainstorms with you | Friendly and cooperative |
Stop guessing how you did. Get real-time, objective scoring across 8 vectors:
SynthHire is structured as a highly scalable microservices architecture capable of handling long-running, stateful WebSocket connections for live interview sessions.
graph TD
%% Define Styles
classDef client fill:#000,stroke:#333,stroke-width:2px,color:#fff
classDef proxy fill:#2496ED,stroke:#fff,stroke-width:2px,color:#fff
classDef service fill:#005571,stroke:#fff,stroke-width:2px,color:#fff
classDef ai fill:#6C42A1,stroke:#fff,stroke-width:2px,color:#fff
classDef infra fill:#316192,stroke:#fff,stroke-width:2px,color:#fff
classDef queue fill:#DC382D,stroke:#fff,stroke-width:2px,color:#fff
%% Frontend & Gateway
Client["Client Browser<br/>(Next.js / React)"]:::client
Nginx["Nginx Reverse Proxy<br/>(API Gateway)"]:::proxy
%% Core Services
Auth["Auth Service<br/>(JWT + User Auth)"]:::service
UserSvc["User/Company Service<br/>(Profiles & Mgmt)"]:::service
JobSvc["Job Service<br/>(Postings & Apps)"]:::service
%% Interview Pipeline
Orchestrator["Session Orchestrator<br/>(WebSocket Hub)"]:::service
Speech["Speech Pipeline<br/>(STT/TTS Engine)"]:::service
Executor["Code Sandbox<br/>(Docker Execution)"]:::service
Assessor["Assessment Engine<br/>(Real-Time Scoring)"]:::service
%% AI APIs
Gemini["Google Gemini<br/>2.5 Flash"]:::ai
Groq["Groq STT"]:::ai
Edge["Edge TTS"]:::ai
%% Databases
Postgres[("PostgreSQL<br/>(Relational State)")]:::infra
Mongo[("MongoDB<br/>(Session Transcripts)")]:::infra
Redis["Redis<br/>(PubSub & Cache)"]:::queue
%% Flow Connections
Client <==>|HTTP / WSS| Nginx
Nginx --> Auth
Nginx --> UserSvc
Nginx --> JobSvc
Nginx <==>|WSS| Orchestrator
Auth --> Postgres
UserSvc --> Postgres
JobSvc --> Postgres
%% Orchestrator is the brain
Orchestrator <--> Redis
Orchestrator --> Mongo
Orchestrator <--> Executor
Orchestrator <--> Assessor
Orchestrator <--> Speech
%% External AI Communication
Assessor --> Gemini
Speech --> Groq
Speech --> Edge
| Layer | Technology |
|---|---|
| Frontend | Next.js 14, TailwindCSS, Monaco Editor, WebRTC |
| Backend | FastAPI, Python 3.11, Microservices |
| AI / ML | Google Gemini 2.5 Flash, Groq STT, Edge TTS |
| Databases | PostgreSQL, MongoDB, Redis |
| DevOps | Docker Compose, Nginx, GitHub Actions |
| Auth | RSA-256 Asymmetric JWT (Zero-Trust) |
SynthHire is fully containerized. You do not need to configure ports or install local runtimes—Docker handles everything.
Clone the repository and set up your environment keys.
git clone https://github.com/Prakat1307/SynthHire-Hub.git
cd SynthHire-Interview-Platform/backend
cp .env.template .env
(Ensure your .env contains the required keys for OpenAI, Groq, and database URIs).
Generate secure cryptographic keys for internal microservice communication:
python scripts/generate_keys.py
Start the databases, cache layers, backend microservices, Next.js frontend, and Nginx reverse proxy in detached mode:
docker-compose up -d --build
Once the containers are healthy, seed the initial database schema:
docker exec -it synthhire-auth python scripts/init_db.py
.env files.PRs are welcome! Open an issue before submitting major changes.
This project is licensed under the MIT License - see the LICENSE file for details.
⭐ If SynthHire helped you, star the repo — it helps others discover it!
25 commits
TypeScript
57.1%
Python
40.4%
An advanced AI Interview Simulator featuring 5 unique personas, live code execution, and 8D scoring—complemented by ATS scoring and auto-apply tools.
0
stars
25
commits
TypeScript
primary language
Mar 19, 2026
updated
The Ultimate AI-Powered Semi-Auto Apply Job Portal & Interview Platform
🎯 Practice interviews with AI personas that push back.
📄 Beat ATS filters before you even hit apply.
⚡ Semi-auto apply to jobs in minutes, not hours.
| Feature | Description | Powered By |
|---|---|---|
| 📄 Resume ATS Scorer | Parses & grades resumes against benchmarks | Gemini 2.5 Flash |
| 🎤 AI Interview Simulation | Voice interviews with 5 AI personas | Groq STT + Edge TTS |
| 🔗 LinkedIn Optimizer | Keyword & headline suggestions | Gemini 2.5 Flash |
| ⚡ Semi-Auto Job Apply | Cover letters from job descriptions | Gemini 2.5 Flash |
| 📚 Prep Hub | Flashcards, DSA warm-ups, cheat sheets | LLM-generated |
| 💻 Live Code Execution | Run 5 languages in sandboxed env | Docker-in-Docker |
| 📊 8D Assessment Engine | Scores 8 dimensions in real-time | Custom LLM Pipeline |
| Persona | Warmth | Probing Style | Interaction Tone |
|---|---|---|---|
| Kind Mentor | High | Frequent hints | Supportive and encouraging |
| Tough Lead | Low | Deep, rigorous probing | High standards, expects optimal solutions |
| Tricky HR | Medium | Tests emotional intelligence | Casual, looks for conflict resolution skills |
| Silent Observer | Low | Minimal interaction | High pressure, tests composure |
| Collaborative Peer | High | Brainstorms with you | Friendly and cooperative |
Stop guessing how you did. Get real-time, objective scoring across 8 vectors:
SynthHire is structured as a highly scalable microservices architecture capable of handling long-running, stateful WebSocket connections for live interview sessions.
graph TD
%% Define Styles
classDef client fill:#000,stroke:#333,stroke-width:2px,color:#fff
classDef proxy fill:#2496ED,stroke:#fff,stroke-width:2px,color:#fff
classDef service fill:#005571,stroke:#fff,stroke-width:2px,color:#fff
classDef ai fill:#6C42A1,stroke:#fff,stroke-width:2px,color:#fff
classDef infra fill:#316192,stroke:#fff,stroke-width:2px,color:#fff
classDef queue fill:#DC382D,stroke:#fff,stroke-width:2px,color:#fff
%% Frontend & Gateway
Client["Client Browser<br/>(Next.js / React)"]:::client
Nginx["Nginx Reverse Proxy<br/>(API Gateway)"]:::proxy
%% Core Services
Auth["Auth Service<br/>(JWT + User Auth)"]:::service
UserSvc["User/Company Service<br/>(Profiles & Mgmt)"]:::service
JobSvc["Job Service<br/>(Postings & Apps)"]:::service
%% Interview Pipeline
Orchestrator["Session Orchestrator<br/>(WebSocket Hub)"]:::service
Speech["Speech Pipeline<br/>(STT/TTS Engine)"]:::service
Executor["Code Sandbox<br/>(Docker Execution)"]:::service
Assessor["Assessment Engine<br/>(Real-Time Scoring)"]:::service
%% AI APIs
Gemini["Google Gemini<br/>2.5 Flash"]:::ai
Groq["Groq STT"]:::ai
Edge["Edge TTS"]:::ai
%% Databases
Postgres[("PostgreSQL<br/>(Relational State)")]:::infra
Mongo[("MongoDB<br/>(Session Transcripts)")]:::infra
Redis["Redis<br/>(PubSub & Cache)"]:::queue
%% Flow Connections
Client <==>|HTTP / WSS| Nginx
Nginx --> Auth
Nginx --> UserSvc
Nginx --> JobSvc
Nginx <==>|WSS| Orchestrator
Auth --> Postgres
UserSvc --> Postgres
JobSvc --> Postgres
%% Orchestrator is the brain
Orchestrator <--> Redis
Orchestrator --> Mongo
Orchestrator <--> Executor
Orchestrator <--> Assessor
Orchestrator <--> Speech
%% External AI Communication
Assessor --> Gemini
Speech --> Groq
Speech --> Edge
| Layer | Technology |
|---|---|
| Frontend | Next.js 14, TailwindCSS, Monaco Editor, WebRTC |
| Backend | FastAPI, Python 3.11, Microservices |
| AI / ML | Google Gemini 2.5 Flash, Groq STT, Edge TTS |
| Databases | PostgreSQL, MongoDB, Redis |
| DevOps | Docker Compose, Nginx, GitHub Actions |
| Auth | RSA-256 Asymmetric JWT (Zero-Trust) |
SynthHire is fully containerized. You do not need to configure ports or install local runtimes—Docker handles everything.
Clone the repository and set up your environment keys.
git clone https://github.com/Prakat1307/SynthHire-Hub.git
cd SynthHire-Interview-Platform/backend
cp .env.template .env
(Ensure your .env contains the required keys for OpenAI, Groq, and database URIs).
Generate secure cryptographic keys for internal microservice communication:
python scripts/generate_keys.py
Start the databases, cache layers, backend microservices, Next.js frontend, and Nginx reverse proxy in detached mode:
docker-compose up -d --build
Once the containers are healthy, seed the initial database schema:
docker exec -it synthhire-auth python scripts/init_db.py
.env files.PRs are welcome! Open an issue before submitting major changes.
This project is licensed under the MIT License - see the LICENSE file for details.
⭐ If SynthHire helped you, star the repo — it helps others discover it!
25 commits
TypeScript
57.1%
Python
40.4%