AI-powered interview prep and resume generation web app.
This repository contains a full-stack application with:
- Backend: Node.js + Express + MongoDB + Google Gemini AI + Puppeteer PDF generation
- Frontend: React + Vite + Axios + SCSS
The app supports:
- user authentication
- resume upload / self-description input
- AI-generated interview reports and practice questions
- AI-generated resume PDF download
.github/workflows/: GitHub Actions workflowsBackend/: backend servicesrc/app.js: Express server and API routessrc/server.js: server launchersrc/config/database.js: MongoDB connectionsrc/controllers/: auth and interview controllerssrc/services/: AI and PDF generation logicsrc/middlewares/: auth and file upload middlewaresrc/models/: Mongoose modelssrc/routes/: API route definitions
Frontend/: React clientsrc/main.jsx: app entrysrc/App.jsx: application shell and routessrc/features/: auth and interview feature modulessrc/styles/: shared stylingsrc/features/interview/style/: page-specific SCSS
- Navigate to
Backend - Install dependencies:
cd Backend npm install - Add a
.envfile inBackend/with:MONGO_URI=your-mongo-connection-string JWT_SECRET=your-jwt-secret GOOGLE_GENAI_API_KEY=your-google-genai-api-key FRONTEND_URL=http://localhost:5173
- Run the backend:
npm start
- Navigate to
Frontend - Install dependencies:
cd Frontend npm install - Run the frontend:
npm run dev
The frontend reads the backend URL from VITE_API_BASE_URL.
- In development, it defaults to
http://localhost:3001 - For production builds, set:
VITE_API_BASE_URL=https://your-backend-url
- This repo is the source code and proof of work.
- The backend cannot be hosted on GitHub Pages; it requires a Node-compatible server (Railway, Fly.io, Vercel, etc.).
- The frontend can be deployed as a static site if built separately.
- Push this repo to GitHub
- Add
README.mdcontent as the project description - Add environment variables securely in your hosting provider
- Use
Backend/.envlocally only; never commit secrets
- Developed by Aditya Singh Butola