An AI-powered interview preparation platform built with the T3 Stack.
- AI-powered mock interviews
- Resume analysis and optimization
- LinkedIn profile integration
- Real-time feedback
- Progress tracking
- Document preparation tools
- Next.js - React framework
- NextAuth.js - Authentication
- Prisma - Database ORM
- Tailwind CSS - Styling
- tRPC - API layer
- PostgreSQL - Database
- Redis - Caching
- Vercel - Hosting
The application requires several environment variables to function properly. Create a .env.local file in the root directory with the following variables:
# Application
NODE_ENV=production
NEXT_PUBLIC_APP_URL=http://localhost:3000
NEXTAUTH_URL=http://localhost:3000
# Authentication
NEXTAUTH_SECRET=your_nextauth_secret_key
AUTH_SECRET=your_auth_secret_key
AUTH_TRUST_HOST=true
CSRF_SECRET=your_csrf_secret_key
# Database
DATABASE_URL=postgresql://postgres:postgres@localhost:5432/interview_genie
# Google services
GOOGLE_CLIENT_ID=your_google_client_id
GOOGLE_CLIENT_SECRET=your_google_client_secret
GOOGLE_GEMINI_API=your_google_gemini_api_key
GOOGLE_GENERATIVE_AI_API_KEY=your_google_generative_ai_api_key
# GitHub authentication
AUTH_GITHUB_ID=your_github_client_id
AUTH_GITHUB_SECRET=your_github_client_secret
# Discord authentication
AUTH_DISCORD_ID=your_discord_client_id
AUTH_DISCORD_SECRET=your_discord_client_secret
# Email service
EMAIL_USER=your_email_username
EMAIL_PASS=your_email_password
# Redis cache
UPSTASH_REDIS_REST_URL=your_redis_url
UPSTASH_REDIS_REST_TOKEN=your_redis_tokenWe've included a PostgreSQL database in the Docker setup. To initialize the database:
setup-db.batchmod +x setup-db.sh
./setup-db.shThis will:
- Start the PostgreSQL container
- Run Prisma migrations
- Generate the Prisma client
If you need to reset the database:
npx prisma migrate resetTo view your database with Prisma Studio:
npx prisma studiodocker-compose -f docker-compose.dev.yml up --builddocker-compose up --buildnpm run devnpm run build
npm startstart-prod.bat- Create feature branch from
development - Make changes and test
- Create PR to
development - After review, merge to
development - Periodic releases from
developmenttomain
npm run dev # Start development server
npm run build # Build for production
npm run start # Start production server
npm run lint # Run ESLint
npm run format # Format codeWe welcome contributions! Please see our Contributing Guidelines.
This project is deployed on Vercel. For deployment instructions, see:
This project is licensed under the MIT License - see the LICENSE file for details.
- T3 Stack for the amazing foundation
- All our contributors and supporters