- Gemini AI
- Next.JS
- Drizzle ORM
- Postgre SQL
- Clerk
- Tailwind CSS
- ShadCN UI
- Collect job information for the upcoming interview
- Generate interview questions through Gemini AI by analysing the job information
- Web cam functionality to improve the confidence in interviews
- Record answers through microphone
- Convert speech to text and store the user answers in database
- Text to speech functionality to listen to the interview questions
- Generate rating and feedback through Gemini AI by analysing the recorded answers
- Practice any previous interviews to upskill
- Clerk authentication through email or with upto 2 social accounts
Create an empty directory and run the following commands in the terminal:
git clone https://github.com/Kaarti22/AI-Mock-Interviewer.git
cd AI-Mock-Interviewer
npm i
Also, create a .env file in the root directory of the project and your environment variables.
The following variables must be added:
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY =
CLERK_SECRET_KEY =
NEXT_PUBLIC_CLERK_SIGN_IN_URL =
NEXT_PUBLIC_CLERK_SIGN_UP_URL =
NEXT_PUBLIC_DRIZZLE_DB_URL =
NEXT_PUBLIC_GEMINI_API_KEY =
NEXT_PUBLIC_INTERVIEW_QUESTION_COUNT =
Finally to run this project, enter the following command:
npm run dev
Open [http://localhost:3000](http://localhost:3000) with your browser to see the result.
You can start editing the page by modifying `app/page.tsx`. The page auto-updates as you edit the file.
This project uses [`next/font`](https://nextjs.org/docs/basic-features/font-optimization) to automatically optimize and load Inter, a custom Google Font.