AmitAI-Interviwer

AI Interviewer Platform

An end-to-end, production-ready AI Interviewer Platform that automates the technical and behavioral interview process. The platform features a real-time AI interviewer capable of speech interaction, vision-based behavior analysis, and dynamic question generation.

🌟 Key Features

🏗️ System Architecture

The platform consists of three main services:

  1. Frontend (Client): A Next.js 16 application for students and admins.
  2. Backend (Server): An Express 5 API server handling business logic, authentication, and data orchestration.
  3. AI Service: A Python FastAPI service managing LLM reasoning, STT, TTS, and vision analysis.

🛠️ Tech Stack

Frontend (Client)

Backend (Server)

AI Service


🚀 Getting Started

Prerequisites

1. AI Service Setup

  1. Navigate to ai-service:
    cd ai-service
    
  2. Create and activate a virtual environment:
    python -m venv venv
    .\venv\Scripts\activate  # Windows
    source venv/bin/activate  # Linux/macOS
    
  3. Install dependencies:
    pip install -r requirements.txt
    
  4. Download the LLM model:
    ollama pull llama3.1:8b
    
  5. Start the service:
    python -m app.main
    

    The service runs at http://localhost:8000

2. Backend Server Setup

  1. Navigate to server:
    cd server
    
  2. Install dependencies:
    npm install
    
  3. Configure environment variables (copy .env.example if available or create .env):
    • PORT=5001
    • MONGO_URI: Your MongoDB connection string
    • JWT_SECRET: A secure random string
  4. Start development server:
    npm run dev
    

3. Frontend Client Setup

  1. Navigate to client:
    cd client
    
  2. Install dependencies:
    npm install
    
  3. Start development server:
    npm run dev
    

    Client will be available at http://localhost:3000


🐋 Database (Docker)

To quickly start a MongoDB instance:

docker-compose up -d

📄 License

This project is licensed under the ISC License.