A modern, AI-driven platform for practicing job interviews with real-time feedback and voice-based interactions.
- AI-Powered Interviews: Generate personalized interview questions based on job role, experience level, and tech stack
- Voice-Based Interactions: Conduct interviews using Vapi AI voice agents
- Real-Time Feedback: Get instant AI-generated feedback on your performance
- User Authentication: Secure Firebase-based authentication system
- Modern UI/UX: Clean, responsive design built with Tailwind CSS
- Session Management: Persistent user sessions with secure cookies
- Frontend: Next.js 15, React 19, TypeScript
- Styling: Tailwind CSS, shadcn/ui components
- Authentication: Firebase Authentication
- Database: Firestore (Firebase)
- AI Services:
- Vapi AI (Voice interactions)
- Google Generative AI (Question generation & feedback)
- Deployment: Vercel-ready
Before running this project, make sure you have:
- Node.js 18+ installed
- npm or yarn package manager
- Firebase project with Firestore enabled
- Vapi AI account
- Google AI Studio API key
git clone https://github.com/your-username/lily-ai-interview-platform.git
cd lily-ai-interview-platformnpm installCreate a .env.local file in the root directory with the following variables:
# Vapi AI Configuration
NEXT_PUBLIC_VAPI_WEB_TOKEN=your_vapi_web_token
NEXT_PUBLIC_VAPI_WORKFLOW_ID=your_vapi_workflow_id
# Google AI Configuration
GOOGLE_GENERATIVE_AI_API_KEY=your_google_ai_api_key
# Base URL
NEXT_PUBLIC_BASE_URL=http://localhost:3000
# Firebase Client Configuration
NEXT_PUBLIC_FIREBASE_API_KEY=your_firebase_api_key
NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN=your_project.firebaseapp.com
NEXT_PUBLIC_FIREBASE_PROJECT_ID=your_project_id
NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET=your_project.appspot.com
NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID=your_sender_id
NEXT_PUBLIC_FIREBASE_APP_ID=your_app_id
# Firebase Admin Configuration
FIREBASE_PROJECT_ID=your_project_id
FIREBASE_CLIENT_EMAIL=your_service_account_email
FIREBASE_PRIVATE_KEY=your_private_key_with_escaped_newlines-
Create a Firebase Project:
- Go to Firebase Console
- Create a new project or use existing one
-
Enable Services:
- Authentication: Enable Email/Password sign-in
- Firestore Database: Create database in test mode
- Authorized Domains: Add
localhostand127.0.0.1
-
Get Configuration:
- Go to Project Settings → General → Your apps
- Create a Web app if not exists
- Copy the configuration values
-
Service Account:
- Go to Project Settings → Service accounts
- Generate new private key
- Download JSON and extract the values
- Create Vapi Account:
- Sign up at Vapi AI
- Create a Voice Workflow
- Generate a Web token
- Get API Key:
- Go to Google AI Studio
- Create an API key
npm run devOpen http://localhost:3000 in your browser.
lily-ai-interview-platform/
├── app/ # Next.js app directory
│ ├── (auth)/ # Authentication pages
│ ├── (root)/ # Protected pages
│ ├── api/ # API routes
│ └── globals.css # Global styles
├── components/ # React components
├── firebase/ # Firebase configuration
├── lib/ # Utility functions and actions
├── public/ # Static assets
└── types/ # TypeScript type definitions
npm run dev- Start development servernpm run build- Build for productionnpm run start- Start production servernpm run lint- Run ESLint
- Push your code to GitHub
- Connect your repository to Vercel
- Add environment variables in Vercel dashboard
- Deploy
The project can be deployed to any platform that supports Next.js:
- Netlify
- Railway
- DigitalOcean App Platform
- Fork the repository
- Create a feature branch
- Make your changes
- Submit a pull request
Aayush Kotadia
- Email: aayushkotadia76@gmail.com
- Built with Next.js and modern web technologies
- Powered by Vapi AI for voice interactions
- Enhanced with Google Generative AI for intelligent feedback
Note: This project is a demonstration of modern web development practices and AI integration. Make sure to replace placeholder values with your actual API keys and configuration.