ELEVARE replaces one-time career quizzes with continuous behavioral analysis through daily AI conversations. Over time, it builds a deep understanding of who you are — your personality, strengths, and values — and maps that to real career paths using the Big Five model and Ikigai framework.
You talk to the AI → AI learns your patterns → You get personalized career recommendations
daily over weeks/months with transparent reasoning
| Feature | Description |
|---|---|
| LLM-Powered Coach | Groq API (Llama 3.3 70B) for natural, empathetic career conversations |
| Longitudinal Analysis | Behavioral patterns tracked over time, not just a single session |
| Big Five Personality | Full OCEAN model profiling with radar chart visualization |
| Ikigai Mapping | Four-quadrant career framework: love, skill, need, pay |
| 8 Behavioral Traits | Creativity, analytical thinking, leadership, teamwork, and more |
| Explainable AI | Every recommendation includes confidence score and reasoning |
| Real-time Dashboard | Trait evolution, streak tracking, and progress analytics |
| Dark Mode | Full dark/light theme with smooth transitions |
| Mobile Responsive | Works on all screen sizes |
┌─────────────────────────────────────┐
│ Frontend (React 18 + Vite) │
│ Dashboard · Chat · Analytics │
└────────────────┬────────────────────┘
│ REST / JSON
┌────────────────▼────────────────────┐
│ Backend API (Node.js + Express) │
│ Auth · Validation · Rate Limiting │
└────────────────┬────────────────────┘
│ HTTP
┌────────────────▼────────────────────┐
│ AI Services (Python + FastAPI) │
│ NLP · Behavioral Analysis │
│ Groq LLM · Recommendations │
└────────────────┬────────────────────┘
│
┌────────────────▼────────────────────┐
│ MongoDB │
│ Users · Profiles · Conversations │
└─────────────────────────────────────┘
| Layer | Technologies |
|---|---|
| Frontend | React 18, Vite, TailwindCSS, Framer Motion, Recharts |
| Backend | Node.js, Express, JWT, Bcrypt, Helmet, express-rate-limit |
| AI Engine | Python, FastAPI, Groq (Llama 3.3 70B), NLTK, TextBlob |
| Database | MongoDB, Mongoose |
| DevOps | Docker, Docker Compose, GitHub Actions CI/CD |
git clone https://github.com/Varadha9/ELEVARE.git
cd ELEVARE
cp .env.template .env # fill in GROQ_API_KEY
./start.shThen open http://localhost:3000
| Software | Version |
|---|---|
| Node.js | 18+ |
| Python | 3.9+ (3.13 supported) |
| MongoDB | 6+ |
| Git | Latest |
git clone https://github.com/Varadha9/ELEVARE.git
cd ELEVARE
cp .env.template .envEdit .env and set these required values:
MONGODB_URI=mongodb://localhost:27017/elevare
JWT_SECRET=your_strong_secret_here # openssl rand -base64 32
GROQ_API_KEY=your_groq_api_key_here # https://console.groq.com/keyscd backend
npm install
cp .env.example .env # fill in your values
node server.jscd ai-services
python -m venv venv
source venv/bin/activate # Linux/Mac
# venv\Scripts\activate # Windows
pip install -r requirements.txt
python -c "import nltk; nltk.download('punkt'); nltk.download('stopwords')"
cp .env.example .env # add GROQ_API_KEY
python main.pycd frontend
npm install
npm run dev| Service | URL |
|---|---|
| Frontend | http://localhost:3000 |
| Backend API | http://localhost:5000 |
| AI Service | http://localhost:8000 |
ELEVARE/
├── backend/ # Node.js Express API
│ ├── middleware/
│ │ ├── auth.js # JWT middleware
│ │ └── validators.js # Input validation
│ ├── models/ # MongoDB schemas
│ ├── utils/
│ │ └── logger.js # Production logger
│ └── server.js # Main server
│
├── frontend/ # React Application
│ └── src/
│ ├── components/
│ │ ├── charts/ # Recharts visualizations
│ │ ├── layout/ # Navbar, Sidebar
│ │ └── ui/ # Reusable components
│ ├── pages/ # 10 pages
│ ├── context/ # Auth state
│ ├── hooks/ # Custom React hooks
│ └── services/api.js # Axios client
│
├── ai-services/ # Python AI Microservice
│ ├── services/
│ │ ├── nlp_processor.py # Sentiment, emotion, keywords
│ │ ├── behavioral_analyzer.py # Trait & Ikigai analysis (EWMA)
│ │ ├── conversational_agent.py # Groq LLM integration
│ │ └── recommendation_engine.py
│ ├── utils/
│ │ └── llm_client.py # Groq API client with retry logic
│ └── main.py # FastAPI server
│
├── docker-compose.yml
├── start.sh # One-command startup script
├── .env.template # All environment variables
└── docs/ # Full documentation
POST /api/auth/register
POST /api/auth/login
PUT /api/auth/change-password
DELETE /api/auth/accountGET /api/profile
PUT /api/profile
GET /api/profile/exportPOST /api/conversations/message
GET /api/conversations/historyGET /api/recommendations
POST /api/recommendations/generateFull API docs → docs/API.md
PORT=5000
NODE_ENV=production
MONGODB_URI=mongodb://localhost:27017/elevare
JWT_SECRET=your_secure_random_secret
JWT_EXPIRE=7d
AI_SERVICE_URL=http://localhost:8000
CORS_ORIGIN=http://localhost:3000
RATE_LIMIT_MAX_REQUESTS=100MONGODB_URI=mongodb://localhost:27017/elevare
GROQ_API_KEY=your_groq_api_key
AI_SERVICE_PORT=8000Get a free Groq API key → console.groq.com/keys
User message
↓
NLP Pipeline (NLTK + TextBlob)
→ sentiment score
→ emotion detection
→ keyword extraction
→ trait signals
↓
Behavioral Analyzer (EWMA)
→ updates 8 trait scores
→ updates Big Five personality
→ recalculates Ikigai alignment
↓
Groq LLM (Llama 3.3 70B)
→ generates empathetic response
→ asks targeted follow-up question
↓
Saved to MongoDB
Confidence Score = (trait match × 0.4) + (personality fit × 0.3) + (ikigai alignment × 0.3)
# Backend tests
cd backend && npm test
# AI service tests
cd ai-services && pytest
# Health checks
curl http://localhost:5000/health
curl http://localhost:8000/health| Service | Platform |
|---|---|
| Frontend | Vercel / Netlify |
| Backend | Railway / Render |
| AI Service | Railway / Fly.io |
| Database | MongoDB Atlas |
Full deployment guide → PRODUCTION_DEPLOYMENT.md
| Collection | Purpose |
|---|---|
users |
Authentication, basic info |
userprofiles |
Behavioral traits, personality, Ikigai |
conversations |
Chat history with NLP analysis |
recommendations |
Career suggestions with confidence scores |
- JWT authentication with configurable expiry
- Bcrypt password hashing (12 rounds)
- Helmet security headers
- MongoDB input sanitization
- Rate limiting — global (100/15min) + auth endpoints (10/15min)
- CORS whitelist configuration
- Input validation on all endpoints (express-validator)
| Document | Description |
|---|---|
| API Reference | Complete API endpoint documentation |
| Architecture | System design and data flow |
| Installation | Detailed setup guide |
| Deployment | Production deployment guide |
| LLM Integration | Groq API integration details |
| Troubleshooting | Common issues and fixes |
| Contributing | How to contribute |
| Changelog | Version history |
- Fork the repository
- Create a branch:
git checkout -b feature/your-feature - Commit with conventional commits:
git commit -m "feat: add feature" - Push and open a Pull Request against
main
See CONTRIBUTING.md for full guidelines.
MIT — see LICENSE for details.
- Big Five Personality Model — OCEAN framework
- Ikigai Framework — Japanese concept for life purpose
- Groq API — Ultra-fast Llama 3.3 70B inference
- NLTK and TextBlob — NLP libraries
Built with ❤️ for students discovering their career path
⭐ Star this repo if ELEVARE helps you!
Author: Varadha