This project targets job seekers aiming to enhance their interview skills through a behavioral mock interview application, powered by artificial intelligence. Leveraging the Deepgram API, the app identifies and timestamps filler words, enabling it to pinpoint pauses in speech. Additionally, it utilizes the Google Gemini API to assess the user's recorded responses, preceded by a prompt, offering constructive feedback on their performance. Users are presented with interview questions, and the app evaluates their verbal responses. The application assigns a performance score based on the comprehensive analysis of speech patterns, filler words, and pauses. The backend of this application is developed using Flask, while the frontend is crafted with Next.js.
To set up the project, follow these steps:
Clone the repository: Use the following command to clone the mockAI
repository to your local machine.
git clone git@github.com:jvrjsanchez/mockAI.git
Navigate to the project directory: Change your current directory to the mock_ai
folder.
cd mock_ai
Install dependencies: Run the following command to install the necessary Node.js packages defined in the package.json
file.
npm install
To set up the necessary environment variables:
flask_api
directory within the project..env.example
file. This file contains a template of the environment variables required by the project..env
in the same directory..env.example
into your .env
file.DG_API_KEY="your_deepgram_api_key_here"
GOOGLE_API_KEY="YOUR_GEMINI_API_KEY_HERE"
PROMPT_TO_AI="YOUR_PROMPT_HERE"
Get your free API keys for Deepgram ,and Gemini API Key.
Refer to the Auth0 documentation to set up your Auth0 account and configure the necessary settings.
💡 Tip: If you click login under the 'Configure The SDK' section, the values will be populated for you.
In the root directory of the project, create a .env.local
file and add the following environment variables:
AUTH0_SECRET='use [openssl rand -hex 32] to generate a 32 bytes value'
AUTH0_BASE_URL='http://localhost:3000'
AUTH0_ISSUER_BASE_URL='https://{yourDomain}'
AUTH0_CLIENT_ID='{yourClientId}'
AUTH0_CLIENT_SECRET='{yourClientSecret}'
Start your Python virtual environment.
python3 -m venv venv
source venv/bin/activate
To run the Flask API as a standalone
run the following commands: Note: This script will install the requirements.txt file for you.
npm run flask-dev
To run the Next.js and Flask api concurrently
, run the following command. This will also install the requirements.txt file for the Flask API:
npm run dev
Flask API will be running on http://localhost:3001
and the Next.js app will be running on http://localhost:3000
.
To run just
the Next.js app, run the following command:
npm run client