An intelligent job application assistant that leverages AI to analyze job descriptions, optimize resumes, and help job seekers land their dream roles. Built with modern web technologies and multiple AI providers for comprehensive job search support.
- Job Description Analysis - AI-powered analysis of job requirements, skills, and responsibilities
- Keyword Optimization - Identify and suggest important keywords from job descriptions
- Transferable Skills Generation - Identify skills that are transferable and relatable to desired job
- Rate Limiting - Production-ready API rate limiting to manage costs and usage
- Resume Optimization - Intelligent resume analysis with personalized improvement recommendations
- Match Scoring - Quantitative assessment of resume-job compatibility
- Cover Letter Generation - AI-generated, personalized cover letters
- STAR Method Creator - Structure behavioral interview answers (guided + free-form)
- Job Matcher - Suggest job titles based on resume and interests
- Salary Advisor - Salary ranges and negotiation tips
- Action Verb Generator - Transform weak bullet points into powerful achievements
- Mock Interviews - Interactive voice-based interview practice with AI
- Company Research - Automated research on company culture, values, and recent news
- Networking Assistant - LinkedIn contact identification and outreach message templates
- Application Tracking - Full job application pipeline management
- Next.js 14+ with App Router
- TypeScript for type safety
- Tailwind CSS for styling
- React Hooks for state management
- Next.js API Routes for serverless functions
- Custom Rate Limiting with in-memory storage
- RESTful API design
- Google Gemini API for intelligent text analysis
- Anthropic Claude API integration (ready for implementation)
- Prompt Engineering for optimal AI responses
- Supabase (PostgreSQL) for structured data
- Environment-based configuration
- Git version control
- GitHub repository management
- Vercel deployment platform
- ESLint & Prettier for code quality
- Node.js 18+ and npm
- Google AI API key
- Supabase account and project
- Git
-
Clone the repository
git clone https://github.com/AvionShea/jobgenie cd jobgenie -
Install dependencies
npm install
-
Set up environment variables
Create a
.envfile in the root directory:# Supabase Configuration NEXT_PUBLIC_SUPABASE_PROJECT_URL=your_supabase_project_url NEXT_PUBLIC_SUPABASE_API_KEY=your_supabase_anon_key # AI API Keys GEMINI_API_KEY=your_google_ai_api_key CLAUDE_API_KEY=your_anthropic_api_key
-
Run the development server
npm run dev
-
Open your browser
Navigate to http://localhost:3000
- Navigate to the "Job Analysis" tab
- Paste a job description into the text area
- Click "Analyze Job" to get:
- Required and nice-to-have skills
- Key responsibilities breakdown
- Switch to the "Resume Optimizer" tab
- Paste your current resume in the left text area
- Paste the target job description in the right text area
- Click "Optimize Resume" to receive:
- Match percentage score
- Your strengths that align with the job
- Skill gaps to address
- Specific improvement recommendations
- Important keywords to include
- Rewritten professional summary
Analyzes job descriptions and extracts key information.
Request Body:
{
"jobDescription": "string"
}Response:
{
"success": true,
"analysis": "AI-generated job analysis",
"timestamp": "2024-01-01T00:00:00.000Z",
"rateLimitStatus": {
"remaining": 5,
"dailyRemaining": 9
}
}Provides resume optimization recommendations based on job requirements.
Request Body:
{
"resumeText": "string",
"jobDescription": "string"
}Response:
{
"success": true,
"analysis": "JSON-formatted optimization results",
"timestamp": "2024-01-01T00:00:00.000Z",
"rateLimitStatus": {
"remaining": 4,
"dailyRemaining": 8
}
}The application implements intelligent rate limiting to stay within API quotas:
- 5 requests per minute per IP address
- 10 requests per day per IP address
- Automatic rate limit status reporting
- User-friendly error messages when limits are exceeded
Rate limits reset automatically and are tracked in-memory for optimal performance.
ai-job-assistant/
โโโ app/
โ โโโ api/
โ โ โโโ analyze-job/
โ โ โ โโโ route.ts
โ โ โโโ optimize-resume/
โ โ โ โโโ route.ts
โ โ โโโ test-setup/
โ โ โโโ route.ts
โ โโโ globals.css
โ โโโ layout.tsx
โ โโโ page.tsx
โโโ components/
โ โโโ ResumeOptimizer.tsx
โโโ lib/
โ โโโ rate-limiter.ts
โโโ .env (your environment variables)
โโโ .gitignore
โโโ next.config.js
โโโ package.json
โโโ README.md
โโโ tsconfig.json
- Separation of Concerns - API logic separated from UI components
- Reusable Components - Modular React components for different features
- Custom Hooks - Centralized state management patterns
- Error Handling - Comprehensive error handling and user feedback
- Type Safety - Full TypeScript implementation
- Connect your GitHub repository to Vercel
- Add environment variables in Vercel dashboard
- Deploy automatically on git push
-
Build the application
npm run build
-
Start production server
npm start
- Multi-provider AI comparison (Claude vs Gemini)
- Vector embeddings for semantic job matching
- Machine learning model for personalized recommendations
- Voice-to-text resume input
- Real-time mock interviews with speech synthesis
- Live feedback during practice sessions
- LinkedIn API integration
- ATS-friendly resume formatting
- Email automation for follow-ups
- Calendar integration for interview scheduling
This is a learning project, but contributions and suggestions are welcome!
- Fork the repository
- Create a feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project demonstrates proficiency in:
- Full-Stack Development with Next.js and TypeScript
- AI/ML Integration with multiple providers
- API Design and rate limiting
- Modern React Patterns and hooks
- Database Design with Supabase
- Production Considerations (error handling, rate limiting, security)
- Clean Code Practices and documentation
This project is licensed under the MIT License - see the LICENSE file for details.
- Google AI for Gemini API access
- Anthropic for Claude API capabilities
- Supabase for database and authentication services
- Vercel for seamless deployment platform
Built with โค๏ธ as a portfolio project to demonstrate modern web development and AI integration skills.