Skip to content

Repository files navigation

Ai-Interview-Platform

Welcome to Ai-Interview-Platform — an intelligent and interactive platform designed to simulate technical interviews using AI. This project leverages modern technologies to provide users with a seamless and realistic interview experience, complete with feedback, authentication, and support for multiple tech stacks.


📚 Introduction

Ai-Interview-Platform aims to help developers practice and prepare for technical interviews. By combining AI-driven interviewers, dynamic tech stack selection, and feedback generation, users can improve their skills in a simulated yet authentic environment. The platform is built with Next.js and integrates Firebase for authentication and data management.


✨ Features

  • AI Interviewer Agent: Engage in interviews with an AI-powered agent tailored to your chosen tech stack.
  • Authentication: Secure sign-up and login flow powered by Firebase.
  • Tech Stack Selection: Choose your preferred technologies; platform dynamically displays relevant icons and interviewer setups.
  • Interview Feedback: Receive AI-generated feedback on your interview performance.
  • Responsive UI: Modern and responsive design for an optimal user experience.
  • Admin & Client Firebase Integration: Robust backend and frontend data management.

⚡️ Installation

Requirements:

  • Node.js (v18+)
  • Yarn or npm
  1. Clone the Repository

    git clone https://github.com/yourusername/Ai-Interview-Platform.git
    cd Ai-Interview-Platform
  2. Install Dependencies

    npm install
    # or
    yarn install
  3. Setup Environment Variables

    Create a .env.local file in the root directory and add your Firebase and other necessary configurations.

    NEXT_PUBLIC_FIREBASE_API_KEY=your_api_key
    NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN=your_auth_domain
    NEXT_PUBLIC_FIREBASE_PROJECT_ID=your_project_id
    # ...other variables
  4. Run the Development Server

    npm run dev
    # or
    yarn dev
  5. Access the Platform Open http://localhost:3000 in your browser.


🚀 Usage

  • Sign Up or Log In: Authenticate using your email.
  • Select Tech Stack: Choose technologies you want to be interviewed on.
  • Start Interview: Engage with the AI interviewer; answer questions and interact as in a real interview.
  • Receive Feedback: After the interview, view feedback generated by the AI.
  • Review Past Interviews: Browse your interview history and feedback.

Project Structure Preview

├─── components
│   ├─── Agent.tsx
│   ├─── AuthForm.tsx
│   ├─── DisplayTechIcon.tsx
│   ├─── FormField.tsx
│   └─── InterviewCard.tsx
├─── constants
│   └─── index.ts
├─── firebase
│   ├─── admin.ts
│   └─── client.ts
├─── public
│   ├─── covers
│   │   ├─── adobe.png
│   │   ├─── amazon.png
│   │   ├─── facebook.png
│   │   ├─── hostinger.png
│   │   ├─── pinterest.png
│   │   ├─── quora.png
│   │   ├─── reddit.png
│   │   ├─── skype.png
│   │   ├─── spotify.png
│   │   ├─── telegram.png
│   │   ├─── tiktok.png
│   │   └─── yahoo.png
│   ├─── ai-avatar.png
│   ├─── calendar.svg
│   ├─── file.svg
│   ├─── globe.svg
│   ├─── logo.svg
│   ├─── pattern.png
│   ├─── profile.svg
│   ├─── react.svg
│   ├─── robot.png
│   ├─── star.svg
│   ├─── tailwind.svg
│   ├─── tech.svg
│   ├─── upload.svg
│   ├─── user-avatar.png
│   └─── window.svg
├─── src
│   ├─── app
│   │   ├─── (auth)
│   │   │   ├─── sign-in
│   │   │   │   └─── page.tsx
│   │   │   ├─── sign-up
│   │   │   │   └─── page.tsx
│   │   │   └─── layout.tsx
│   │   ├─── (root)
│   │   │   ├─── interview
│   │   │   │   ├─── [id]
│   │   │   │   │   ├─── feedback
│   │   │   │   │   │   └─── page.tsx
│   │   │   │   │   └─── page.tsx
│   │   │   │   └─── page.tsx
│   │   │   ├─── layout.tsx
│   │   │   └─── page.tsx
│   │   ├─── api
│   │   │   └─── vapi
│   │   │       └─── generate
│   │   │           └─── route.ts
│   │   ├─── favicon.ico
│   │   ├─── globals.css
│   │   └─── layout.tsx
│   ├─── components
│   │   └─── ui
│   │       ├─── button.tsx
│   │       ├─── form.tsx
│   │       ├─── input.tsx
│   │       ├─── label.tsx
│   │       └─── sonner.tsx
│   └─── lib
│       ├─── actions
│       │   ├─── auth.action.ts
│       │   └─── general.actions.ts
│       ├─── utils.ts
│       └─── vapi.sdk.ts
├─── types
│   ├─── index.d.ts
│   └─── vapi.d.ts
├─── .gitignore
├─── components.json
├─── eslint.config.mjs
├─── next.config.ts
├─── package-lock.json
├─── package.json
├─── postcss.config.mjs
├─── README.md
└─── tsconfig.json

ScreenShots

image image image image image

About

Ai-Interview-Platform is an intelligent and interactive platform designed to simulate technical interviews using AI. The project provides users with a seamless and engaging experience for interview preparation, leveraging modern web technologies to create a scalable and real-time application.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages