An AI-powered application that simulates professional job interviews. The app conducts interviews step-by-step, asking tailored questions based on user responses, and provides structured feedback at the end of the interview.
- Start a mock interview for any job title.
- Realistic interview simulation where the AI asks questions dynamically based on user responses.
- Structured feedback at the end of the interview, including strengths, areas for improvement, and overall impression.
- Fully responsive and user-friendly interface.
- Framework: Next.js with TypeScript
- Styling: Tailwind CSS
- Backend: Next.js API Routes
- AI: Google Gemini API (via
@google/generative-ai
package) - State Management: React Hooks
- Package Manager: pnpm
- Node.js (v16 or later)
- pnpm (preferred package manager)
- A Google Gemini API key
-
Create the Project
This project was bootstrapped using the following command:pnpm create-next-app@latest
- Chose
TypeScript
for the project setup.
- Chose
-
Clone the Repository
git clone <repository-url> cd ai-mock-interviewer
-
Install Dependencies
Usepnpm
to install project dependencies:pnpm install
-
Environment Variables
Create a.env.local
file in the root directory and add your Gemini API key:GEMINI_API_KEY=your_google_gemini_api_key
-
Run the Development Server
pnpm dev
-
Build for Production
To build and start the app in production mode:pnpm build pnpm start
-
Linting
Run the linter to check for code quality:pnpm lint
├── /app
│ ├── /api
│ │ └── generate.ts
│ ├── /components
│ │ ├── ConversationBox.tsx
│ │ ├── JobTitleInput.tsx
│ │ └── UserInputBox.tsx
│ └── page.tsx
├── /public
├── /styles
├── /utils
│ └── client.ts
├── .env.local
├── README.md
├── next.config.js
└── tsconfig.json
This project is licensed under the MIT License. Feel free to use and modify it as per your requirements.