Skip to content

arzoojangra/iPrepAI

Repository files navigation

iPrepAI

Practice for your next interview with AI! iPrepAI is a full-stack web application built with Next.js, Firebase, and modern React. It allows users to sign up, take mock interviews, receive AI-generated feedback, and track their progress.

Features

  • User Authentication: Sign up/sign in with email and password and avatar.
  • Profile Management: Update your name and avatar, view your email and interview history.
  • Mock Interviews: Take interviews for different roles and tech stacks.
  • AI Feedback: Get detailed, structured feedback and scores for each interview.
  • Interview History: View all your past interviews and feedback, with average rating calculation.
  • Modern UI: Responsive, accessible, and visually appealing interface.
  • AI Voice Assistant (VAPI): Integrated voice assistant powered by VAPI. Users can interact with the app using voice commands, receive spoken feedback, and enjoy a more immersive, hands-free interview experience. The voice assistant can guide users through the interview process, read out questions, and provide instant feedback.

Tech Stack

  • Frontend: Next.js (App Router), React, Tailwind CSS
  • Backend: Firebase (Firestore, Auth)
  • AI Feedback: Google Gemini API (via ai-sdk)
  • State Management: React Hook Form, Zod
  • UI Components: Custom components, Shadcn UI
  • AI Voice Assistant: VAPI

Getting Started

  1. Clone the repo:
    git clone https://github.com/yourusername/iprepai.git
    cd iprepai
  2. Install dependencies:
    npm install
    # or yarn install
  3. Set up environment variables:
    • Copy .env.example to .env.local and fill in your Firebase and API keys.
  4. Run the development server:
    npm run dev
    # or yarn dev
  5. Open the app: Visit http://localhost:3000 in your browser.

Project Structure

iprepai/
  app/           # Next.js app directory (routing, pages, layouts)
  components/    # Reusable React components
  lib/           # Utility functions, API actions
  firebase/      # Firebase client and admin setup
  public/        # Static assets (avatars, icons, images)
  types/         # TypeScript types and interfaces

Contributing

  1. Fork the repo and create your branch from master.
  2. Make your changes and add tests if applicable.
  3. Run npm run lint and npm run build to check for errors.
  4. Submit a pull request!

License

MIT


iPrepAI © 2024. Built with ❤️ using Next.js, Firebase, and AI.

About

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published