An AI-powered career guidance platform using Meta Llama for intelligent career recommendations and LinkedIn profile analysis.
- Landing Page: Professional hero section with feature highlights
- Career Dashboard: Interactive interface for skill input and AI analysis
- LinkedIn Integration: Fetch profile data directly from LinkedIn URLs
- Resume Builder: AI-powered resume analysis and improvement suggestions
- AI-Powered Recommendations: Get personalized job roles and technology suggestions
- PDF Export: Download your career analysis and resume improvement reports
- Modern UI: Dark theme with glassmorphism effects and smooth animations
- Frontend: Next.js 15, React, Tailwind CSS
- Backend: Next.js API Routes
- AI: Meta Llama (mock implementation included)
- LinkedIn Data: RapidAPI, ScraperAPI, Bright Data, or Apify (demo mode included)
- Deployment: Docker-ready
- Node.js 18+ installed
- npm or yarn package manager
- Clone the repository
- Install dependencies:
```bash npm install ```
- Run the development server:
```bash npm run dev ```
- Open http://localhost:3000 in your browser
The current implementation uses a mock AI response. To integrate the real Meta Llama API:
- Install the AI SDK:
```bash npm install ai @ai-sdk/openai ```
- Add your Meta Llama API credentials to environment variables:
```env LLAMA_API_KEY=your_api_key_here ```
-
Update
app/api/analyze/route.tsto use the real API (see commented code in the file) -
Uncomment the Meta Llama integration code and remove the mock implementation
The app supports fetching LinkedIn profile data directly from URLs. Currently using a demo mode with mock data.
RapidAPI offers multiple LinkedIn scraping services. Choose one that fits your needs:
- Sign up at RapidAPI
- Subscribe to a LinkedIn scraper API:
- Fresh LinkedIn Profile Data - $0.001-0.01 per request
- LinkedIn Profile Data API - Various pricing tiers
- Search "LinkedIn" on RapidAPI for more options
- Add to environment variables:
```env RAPIDAPI_KEY=your_rapidapi_key ```
- Uncomment the RapidAPI integration code in
app/api/linkedin/fetch/route.ts
Pricing: Varies by provider, typically $0.001-0.05 per profile
General-purpose web scraping service that works with LinkedIn:
- Sign up at ScraperAPI
- Get your API key
- Add to environment variables:
```env SCRAPER_API_KEY=your_scraperapi_key ```
- Uncomment the ScraperAPI integration code in
app/api/linkedin/fetch/route.ts - Implement HTML parsing logic to extract profile data
Pricing: Starting at $49/month for 100K API credits
Enterprise-grade data collection platform:
- Sign up at Bright Data
- Access LinkedIn dataset
- Add to environment variables:
```env BRIGHT_DATA_API_KEY=your_brightdata_key ```
- Uncomment the Bright Data integration code in
app/api/linkedin/fetch/route.ts
Pricing: Custom enterprise pricing
Web scraping and automation platform with LinkedIn actors:
- Sign up at Apify
- Find LinkedIn Profile Scraper actor
- Add to environment variables:
```env APIFY_API_TOKEN=your_apify_token ```
- Uncomment the Apify integration code in
app/api/linkedin/fetch/route.ts
Pricing: Pay-as-you-go, starting at $49/month
For personal use, create a browser extension that extracts LinkedIn data:
- Build a Chrome/Firefox extension
- Extract profile data from the DOM
- Send data to your app via API
- No external API costs
Note: This approach is for personal use only and may violate LinkedIn's terms of service if used at scale.
The demo mode generates realistic mock profile data based on the LinkedIn URL. This is useful for:
- Development and testing
- Demonstrations and presentations
- Understanding the data structure before integrating real APIs
To use real LinkedIn data, follow one of the production integration options above.
Analyzes skills and provides career recommendations.
Request: ```json { "skills": "Python, React, SQL, Node.js..." } ```
Response: ```json { "jobRoles": ["Full Stack Developer", "..."], "technologies": ["Docker", "..."], "summary": "Based on your skills..." } ```
Analyzes LinkedIn profile data and provides resume improvements.
Request: ```json { "profileData": "About: ... Experience: ..." } ```
Response: ```json { "improvements": ["Add quantifiable achievements", "..."], "optimizedSummary": "Results-driven professional...", "suggestedSkills": ["Leadership", "..."], "resumeScore": 75 } ```
Fetches LinkedIn profile data from URL (demo mode or with API integration).
Request: ```json { "linkedinUrl": "https://www.linkedin.com/in/username" } ```
Response: ```json { "profileData": "About: ... Experience: ...", "demo": true, "message": "Demo mode: Using mock data..." } ```
``` ├── app/ │ ├── page.tsx # Landing page │ ├── dashboard/ │ │ └── page.tsx # Career dashboard │ ├── api/ │ │ ├── analyze/ │ │ │ └── route.ts # AI analysis API endpoint │ │ ├── resume/ │ │ │ └── route.ts # Resume analysis API endpoint │ │ └── linkedin/ │ │ └── fetch/ │ │ └── route.ts # LinkedIn data fetching API endpoint │ ├── layout.tsx # Root layout │ └── globals.css # Global styles ├── components/ │ └── ui/ # shadcn/ui components ├── Dockerfile # Docker configuration └── README.md ```
- Hero section with compelling messaging
- Feature cards highlighting AI capabilities
- LinkedIn profile data fetching feature
- Resume builder feature
- Call-to-action buttons
- Responsive design
- Large text input for skills
- Real-time AI analysis
- LinkedIn profile data input
- Resume improvement suggestions
- Results display with:
- Recommended job roles
- Technologies to learn
- AI-generated career summary
- Optimized resume summary
- Download report functionality
-
RESTful API endpoint at
/api/analyze -
Mock implementation for development
-
Easy integration with Meta Llama
-
Error handling and validation
-
RESTful API endpoint at
/api/resume -
Analyzes LinkedIn profile data
-
Provides resume improvements
-
Error handling and validation
-
RESTful API endpoint at
/api/linkedin/fetch -
Fetches LinkedIn profile data from URL
-
Demo mode with mock data
-
Multiple integration options: RapidAPI, ScraperAPI, Bright Data, Apify
-
Error handling and validation
- Edit
app/globals.cssto customize colors and themes - Modify design tokens for consistent theming
- Adjust glassmorphism effects and animations
- Update the prompt in
app/api/analyze/route.tsto customize AI responses - Adjust the mock analysis logic for different skill categories
- Customize the LinkedIn data fetching logic in
app/api/linkedin/fetch/route.ts - Adjust the mock profile data generation for different scenarios
- Customize the resume analysis and improvement logic in
app/api/resume/route.ts - Adjust the mock suggestions for different profile data
```env
LLAMA_API_KEY=your_llama_api_key
RAPIDAPI_KEY=your_rapidapi_key
SCRAPER_API_KEY=your_scraperapi_key
BRIGHT_DATA_API_KEY=your_brightdata_key
APIFY_API_TOKEN=your_apify_token ```
Build and run with Docker:
```bash
docker build -t ai-career-mentor .
docker run -p 3000:3000 ai-career-mentor ```
MIT
For issues or questions, please open an issue on GitHub.