An intelligent interview preparation system that generates personalized questions based on candidate profiles and documents using RAG (Retrieval-Augmented Generation) technology.
- Multi-step persona assessment form
- Document upload and processing (PDF, DOCX, TXT, RTF)
- AI-powered question generation across multiple categories
- Local-first processing for privacy
- Export capabilities (PDF, Word, JSON)
- Cross-platform support (Web + Desktop)
rag-interview-prep/
├── frontend/ # React TypeScript application
├── backend/ # FastAPI Python application
├── docs/ # Documentation
├── scripts/ # Development and deployment scripts
└── .kiro/ # Kiro specifications
Prerequisites:
- Docker and Docker Compose
One-command setup:
./scripts/docker-setup.shDevelopment commands:
# Start application
./scripts/docker-dev.sh start
# View logs
./scripts/docker-dev.sh logs
# Stop application
./scripts/docker-dev.sh stop
# Restart services
./scripts/docker-dev.sh restart
# Check status
./scripts/docker-dev.sh statusPrerequisites:
- Node.js 18+ and npm
- Python 3.11+
- Git
Setup steps:
# 1. Setup backend
cd backend
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
pip install -r requirements-minimal.txt
cp .env.example .env
# 2. Setup frontend
cd frontend
npm install
# 3. Start development servers
# Terminal 1 - Backend
cd backend && source venv/bin/activate && python main.py
# Terminal 2 - Frontend
cd frontend && npm run devFrontend:
- React 18 with TypeScript
- Vite for build tooling
- Tailwind CSS + shadcn/ui
- Zustand for state management
- React Hook Form + Zod validation
Backend:
- FastAPI with Python 3.11+
- LangChain for document processing
- FAISS for vector search
- SQLite for local storage
- Sentence-Transformers for embeddings
# Start all services
docker-compose up -d
# Stop all services
docker-compose down
# View logs
docker-compose logs -f
# Check service status
docker-compose ps
# Rebuild services
docker-compose build --no-cache# Use the helper script for common operations
./scripts/docker-dev.sh start # Start application
./scripts/docker-dev.sh logs # View logs
./scripts/docker-dev.sh stop # Stop application
./scripts/docker-dev.sh status # Check status- Frontend: http://localhost:3001
- Backend API: http://localhost:8001
- API Documentation: http://localhost:8001/docs
- Redis: localhost:6379
MIT License