An intelligent interview preparation platform that provides AI-powered mock interviews with real-time voice interaction and comprehensive feedback. Practice technical, behavioral, and mixed interviews to boost your confidence and improve your performance.
- AI-powered interviewer with natural conversation flow
- Voice-to-voice interaction using advanced speech recognition
- Professional interview simulation with realistic scenarios
- Detailed scoring across multiple dimensions:
- Communication Skills
- Technical Knowledge
- Problem Solving
- Cultural Fit
- Confidence and Clarity
- Overall score out of 100 with actionable insights
- Strengths identification and improvement recommendations
- Technical Interviews: Focus on coding skills and technical knowledge
- Behavioral Interviews: Assess soft skills and cultural fit
- Mixed Interviews: Combination of technical and behavioral questions
Support for 50+ technologies including:
- Frontend: React, Next.js, TypeScript
- Backend: Node.js, Express, NestJS, GraphQL
- Databases: PostgreSQL, Firebase
- Styling: Tailwind CSS, Shadcn ui
- Secure authentication with Firebase
- Personal interview history tracking
- Progress monitoring and performance analytics
- Node.js 18+
- npm, yarn, or pnpm
- Firebase account for authentication
- VAPI account for voice AI functionality
- Clone the repository
git clone <repository-url>
cd interview-prep- Install dependencies
npm install
# or
yarn install
# or
pnpm install- Environment Setup
Create a
.env.localfile in the root directory:
# Firebase 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
# VAPI Configuration
NEXT_PUBLIC_VAPI_PUBLIC_KEY=your_vapi_public_key
VAPI_PRIVATE_KEY=your_vapi_private_key
# Google AI (for feedback generation)
GOOGLE_GENERATIVE_AI_API_KEY=your_google_ai_api_key- Run the development server
npm run dev
# or
yarn dev
# or
pnpm dev- Open your browser Navigate to http://localhost:3000 to see the application.
├── app/ # Next.js App Router
│ ├── (auth)/ # Authentication pages
│ ├── (root)/ # Main application pages
│ └── api/ # API routes
├── components/ # Reusable UI components
│ ├── ui/ # Base UI components
│ ├── Agent.tsx # Voice AI interview component
│ ├── InterviewCard.tsx # Interview display component
│ └── ...
├── lib/ # Utility functions and actions
│ ├── actions/ # Server actions
│ ├── utils.ts # Helper utilities
│ └── vapi.sdk.ts # VAPI SDK integration
├── constants/ # Application constants
├── types/ # TypeScript type definitions
├── firebase/ # Firebase configuration
└── public/ # Static assets
- Framework: Next.js 15 with App Router
- Language: TypeScript
- Styling: Tailwind CSS
- UI Components: Radix UI
- Authentication: Firebase Auth
- Database: Firebase Firestore
- Voice AI: VAPI (Voice AI Platform)
- AI Models: Google Generative AI, OpenAI GPT-4
- Form Handling: React Hook Form with Zod validation
- Icons: Lucide React
- Sign Up/Login: Create an account or sign in with existing credentials
- Start Interview: Click "Start an Interview" to begin a new session
- Configure Interview: Select role, interview type, and technology stack
- Take Interview: Engage in real-time voice conversation with AI interviewer
- Review Feedback: Get detailed performance analysis and improvement suggestions
- Track Progress: Monitor your interview history and performance trends
- Firebase Authentication for secure user management
- Protected routes with middleware
- Secure API endpoints with proper validation
- Environment variables for sensitive configuration
- Mobile-first responsive design
- Optimized for desktop, tablet, and mobile devices
- Accessible UI components following WCAG guidelines
- Connect your repository to Vercel
- Configure environment variables in Vercel dashboard
- Deploy automatically on every push to main branch
The application can be deployed on any platform that supports Next.js:
- Netlify
- Railway
- AWS Amplify
- DigitalOcean App Platform
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
If you encounter any issues or have questions:
- Check the Issues page for existing solutions
- Create a new issue with detailed description
- Contact the development team