Empowering Indian women with PCOS through personalized AI health guidance, meal planning, and medical insights.
Polycystic Ovary Syndrome (PCOS) affects 1 in 5 Indian women, yet:
- π° Specialist consultations cost βΉ1,500-βΉ3,000 per visit
- π½οΈ Generic meal plans ignore regional cuisines and dietary preferences
- π Medical reports use complex terminology that confuses patients
- π Finding PCOS-specific guidance requires hours of research across unreliable sources
Sakhee is a culturally-aware AI health companion that combines GPT-4o-mini, Retrieval-Augmented Generation (RAG), and medical knowledge bases to deliver:
β
Instant AI chat trained on PCOS research + real community experiences
β
Personalized Indian meal plans (33 regional cuisines, 8 diet types including Keto)
β
Smart recipe search powered by Spoonacular API with PCOS filtering
β
Medical report analysis in simple language with actionable insights
β
Progress tracking with visual dashboards and symptom correlation
- Powered by: GPT-4o-mini with RAG for PCOS-specific accuracy
- Knowledge Sources:
- Medical research papers and nutritional guidelines
- Reddit community discussions (anonymized, optional)
- Real-time web search for latest information
- Safety: Content filtering, medical disclaimers, rate limiting
| Feature | Details |
|---|---|
| Cuisines | 33 regional options (Tamil, Gujarati, Bengali, Punjabi, etc.) |
| Diet Types | Vegetarian, Non-Veg, Vegan, Jain (strictest - no root vegetables) |
| Keto Support | β‘ Optional modifier for all diet types with grain elimination |
| RAG Templates | 1,300+ curated meal entries from expert knowledge base |
| Personalization | Allergies, symptoms, medical reports, budget, prep time |
- Works with ALL diet types: Veg Keto, Non-Veg Keto, Vegan Keto, Jain Keto
- Automatic grain replacement: Rice β Cauliflower rice, Roti β Almond flour roti
- Target macros: 70% fat, 25% protein, 5% carbs (20-50g net carbs/day)
- 6,400+ word substitute database covering Indian cuisine adaptations
- PCOS benefits: Improved insulin sensitivity, hormone balance, stable blood sugar
- Multi-stage retrieval: Regional templates β Symptom guidance β Lab markers β Substitutes
- Hybrid re-ranking: Semantic similarity + nutritional scoring (+40% satisfaction)
- Quality metrics: High/Medium/Low coverage displayed to users
- Transparency: Shows data sources (onboarding, medical reports, RAG knowledge base)
| Metric | Before | After | Improvement |
|---|---|---|---|
| Total Latency | 7.7s | 3.5s | -54% β‘ |
| RAG Retrieval | 4.2s | 0.75s | -82% π |
| Cost per Request | $0.36 | $0.17 | -53% π° |
| Cuisine Accuracy | 55.6% | 98% | +76% π― |
| User Satisfaction | 60% | 96% | +60% π |
- Supported formats: PDF, DOCX, JPG, PNG
- OCR technology: Tesseract.js for image-based reports
- Intelligent extraction: Hormones, biomarkers, nutrient levels with reference ranges
- Integration: Report data automatically influences meal plan personalization
- Powered by: Spoonacular API with PCOS-specific filtering
- Smart search: Finds recipes matching dietary preferences and restrictions
- Nutrition analysis: Detailed macro breakdowns for each recipe
- Usage tracking: Limited searches per plan tier
- Integration: Save favorite recipes for future meal plans
- Metrics: Weight, BMI, menstrual cycle regularity, symptoms (acne, hair loss, mood)
- Visualizations: Recharts-powered trend analysis and correlations
- AI insights: Automated progress summaries and recommendations
| Plan | Price | Features |
|---|---|---|
| FREE | βΉ0 | 1 lifetime meal plan, AI chat (limited), basic tracking |
| PRO | βΉ500/month βΉ5,000/year |
3 meal plans/week (resets Monday), unlimited chat, report analysis, PDF export |
| MAX | βΉ1,000/month (Coming Soon) |
Unlimited meal plans, priority support, advanced analytics |
- Usage control: Automatic weekly reset (Monday 00:00)
- Flexible billing: Monthly or yearly (17% discount on annual)
- Cancellation grace: Retain access until subscription end date
- Upgrade flow: Instant access after plan change
React 18.2 | Vite 5.0 | Tailwind CSS 3.3 | TypeScript
βββ State Management: Zustand 4.4
βββ Routing: React Router 6.20
βββ Auth: Firebase Auth (Google OAuth)
βββ Charts: Recharts 2.10
βββ PDF Export: jsPDF 2.5.1
βββ i18n: i18next 23.7
Express 4.18 | Node.js 18+
βββ AI/ML: LangChain.js 0.1.28 + OpenAI GPT-4o-mini
βββ Embeddings: text-embedding-3-small (OpenAI)
βββ Vector DB: HNSWLib (hnswlib-node 2.0)
βββ OCR: Tesseract.js 5.0
βββ Document Parsing: PDF.js 4.0 + Mammoth 1.6
βββ APIs: Spoonacular (nutrition), Reddit (community insights)
βββ Database: Firestore (user profiles, subscriptions)
βββ Security: CORS, Rate Limiting, Content Safety Guards
User Query
β
Query Expansion (LLM + Embedding Cache)
β
Multi-Stage Retrieval (Parallel)
βββ Regional Meal Templates (topK=15)
βββ Symptom Guidance (per symptom, topK=4)
βββ Lab Markers (topK=3)
βββ Ingredient Substitutes (topK=2-3)
β
Deduplication + Hybrid Re-Ranking
βββ Semantic Similarity (40%)
βββ Protein Content (15%)
βββ Glycemic Index (20%)
βββ Budget Alignment (10%)
βββ Prep Time (5%)
β
Context Compression (340 β 80 tokens/meal)
β
LLM Generation (GPT-4o-mini)
β
Validation + Fallback Templates
Sakhee uses a warm, feminine, and approachable color scheme designed specifically for women's health:
| Color | Hex | Usage |
|---|---|---|
| Primary Dark | #e85a5a |
Buttons on hover, emphasis, CTA highlights |
| Primary | #ff8d8d |
Main brand color, buttons, links, headings |
| Secondary | #FFE2E2 |
Subtle backgrounds, card layers, soft accents |
| Accent | #ffb3b3 |
Hover states, card layers, decorative elements |
| Background | #FFFDEC |
Main page background (light cream) |
| Surface | #ffffff |
Cards, modals, elevated surfaces |
| Success | #06d6a0 |
Success messages, positive indicators (teal) |
| Warning | #ff8b2e |
Warnings, caution indicators (orange) |
| Danger | #ff006e |
Errors, destructive actions (red) |
| Muted | #9a8c98 |
Disabled states, subtle text (gray) |
- Headings (H1-H6): Lora (serif, 600-700 weight)
- Professional, elegant, trustworthy
- Used for titles, section headers, emphasis
- Body Text: Inter (sans-serif, 400 weight)
- Clean, readable, modern
- Primary font for paragraphs, UI elements, descriptions
- Fallback: Segoe UI, Roboto, system sans-serif
- Soft & Approachable: Pink-toned gradients and rounded corners (border-radius: 24px on cards)
- Layered Depth: Multi-layer card effects with pseudo-elements (
::before,::after) for 3D appearance - Smooth Transitions: All interactive elements use
0.48s cubic-bezier(0.23, 1, 0.32, 1)for fluid animations - Accessibility: High contrast ratios, readable fonts, focus states
| Component | Description |
|---|---|
| Buttons | .btn-primary, .btn-outline, .btn-secondary with hover animations |
| Cards | Layered design with shadow effects, hover lift animations (translate(0, -16px)) |
| Badges | Color-coded status indicators (primary, success, warning, danger) |
| Custom Scrollbar | Styled with primary pink color, rounded thumbs |
- slideIn: Smooth entrance from bottom (0.5rem translateY)
- fadeIn: Opacity transition for content reveals
- Card Hover: Elevate with 3D rotation effects on pseudo-elements
All colors and design tokens are centrally managed in frontend/tailwind.config.ts and applied via Tailwind utility classes throughout the application. Custom CSS in frontend/src/styles/index.css extends Tailwind with:
- Global resets and base styles
- Custom component classes (
.btn,.card,.badge) - Keyframe animations
- Scrollbar styling
- Ant Design Select dropdown overrides for brand consistency
/* Main body gradient */
bg-gradient-to-r from-pink-100 via-red-50 to-rose-100- Node.js >= 18
- OpenAI API key (Get here)
- Firebase project (Setup guide)
- Spoonacular API key (Get free tier)
# Clone repository
git clone https://github.com/supriyavikramsingh-sudo/sakhee.git
cd sakhee
npm install
# Configure environment variables
cp server/.env.example server/.env
cp frontend/.env.example frontend/.env
# Edit .env files with your API keys
# server/.env: OPENAI_API_KEY, SPOONACULAR_API_KEY
# frontend/.env: VITE_FIREBASE_* (all Firebase config)
# Initialize RAG system (optional but recommended)
cd server
npm run ingest:meals # Index 1,300+ meal templates
cd ..
# Start development servers
npm run devAccess the app:
- Frontend: http://localhost:5173
- Backend: http://localhost:5000
sakhee/
βββ frontend/ # React + Vite + Tailwind
β βββ src/
β β βββ components/
β β β βββ chat/ # AI chat interface
β β β βββ meal/ # Meal planning UI
β β β βββ settings/ # Subscription management
β β β βββ pricing/ # Pricing cards & comparison
β β βββ pages/
β β β βββ ChatPage.tsx
β β β βββ MealPlanPage.tsx
β β β βββ PricingPage.tsx
β β β βββ SettingsPageNew.tsx
β β βββ services/
β β β βββ chatApi.js # Chat API client
β β β βββ mealApi.js # Meal planning API
β β β βββ subscriptionApi.ts
β β βββ config/
β β βββ firebase.js
β β βββ pricingConfig.ts
β βββ package.json
β
βββ server/ # Express + LangChain.js
β βββ src/
β β βββ langchain/
β β β βββ chains/
β β β β βββ chatChain.js # AI chat logic
β β β β βββ mealPlanChain.js # Meal generation (3,500+ lines)
β β β βββ vectorStore.js # HNSWLib integration
β β β βββ retriever.js # RAG retrieval
β β β βββ embeddings.js # Cached OpenAI embeddings
β β βββ routes/
β β β βββ chat.js
β β β βββ mealPlan.js # Access control + generation
β β β βββ recipes.js # Recipe search (NEW)
β β β βββ subscription.js # Subscription management
β β β βββ jobs.js # Background job tracking (NEW)
β β β βββ metrics.js # Performance metrics (NEW)
β β β βββ feedback.js # User feedback
β β β βββ userProfile.js # User profile management (NEW)
β β β βββ upload.js # Medical report upload
β β β βββ onboarding.js # Multi-step onboarding
β β β βββ progress.js # Progress tracking
β β β βββ ragStatus.js # RAG system status
β β βββ services/
β β β βββ ocrService.js # Tesseract.js OCR
β β β βββ spoonacularService.js # Nutrition & recipe API
β β β βββ redditService.js # Community insights
β β β βββ medicalReportService.js # Report parsing & analysis
β β β βββ jobService.js # Background job management (NEW)
β β β βββ parserService.js # PDF/DOCX parsing
β β β βββ firebaseCacheService.js # Firebase caching
β β βββ utils/
β β β βββ subscriptionUtils.js # Access control logic
β β β βββ macroCalculator.js # Dynamic macro targets
β β βββ data/
β β βββ meal_templates/ # 1,300+ meal entries (.txt)
β β βββ medical/ # Medical knowledge base
β β βββ nutritional/ # Nutrition guidelines
β βββ package.json
β
βββ Important Docs/
β βββ RAG_OPTIMIZATION_SUMMARY.md # Performance metrics & fixes
β
βββ README.md # This file
| Endpoint | Method | Description |
|---|---|---|
/api/chat/message |
POST | Send chat message, get AI response with RAG context |
/api/chat/history/:userId |
GET | Get user's chat history |
/api/chat/history/:userId |
DELETE | Clear user's chat history |
/api/chat/feedback |
POST | Submit chat interaction feedback |
/api/chat/feedback/:userId |
GET | Get user's chat feedback history |
| Endpoint | Method | Description |
|---|---|---|
/api/meals/generate |
POST | Generate personalized meal plan (with access control) |
/api/meals/:planId |
GET | Retrieve specific meal plan |
/api/meals/user/:userId |
GET | Get user's meal plan history |
/api/meals/:planId |
DELETE | Delete meal plan |
| Endpoint | Method | Description |
|---|---|---|
/api/recipes/search |
POST | Search PCOS-friendly recipes (Spoonacular API) |
/api/recipes/usage/:userId |
GET | Get recipe search usage stats |
| Endpoint | Method | Description |
|---|---|---|
/api/user/subscription |
GET | Get subscription details & usage |
/api/user/subscription/upgrade |
PUT | Upgrade to PRO/MAX |
/api/user/subscription/cancel |
PUT | Cancel subscription (retain access) |
/api/user/subscription/reactivate |
PUT | Reactivate cancelled subscription |
/api/user/usage |
GET | Get meal plan usage statistics |
| Endpoint | Method | Description |
|---|---|---|
/api/upload/report |
POST | Upload medical report (PDF/DOCX/image with OCR) |
/api/upload/user/:userId/report |
GET | Get user's latest medical report |
/api/upload/user/:userId/has-report |
GET | Check if user has uploaded report |
/api/upload/user/:userId/report |
DELETE | Delete user's medical report |
| Endpoint | Method | Description |
|---|---|---|
/api/onboarding/start |
POST | Start onboarding flow |
/api/onboarding/:userId/save-step |
POST | Save onboarding step progress |
/api/onboarding/:userId/complete |
POST | Complete onboarding |
/api/onboarding/:userId |
GET | Get user's onboarding data |
/api/user/* |
* | User profile management |
| Endpoint | Method | Description |
|---|---|---|
/api/progress |
GET/POST | Track health metrics & symptoms |
| Endpoint | Method | Description |
|---|---|---|
/api/jobs/:jobId |
GET | Get background job status |
/api/jobs/user/:userId |
GET | Get user's job history |
/api/jobs/user/:userId/active |
GET | Get active jobs for user |
| Endpoint | Method | Description |
|---|---|---|
/api/health |
GET | API health check with RAG status |
/api/rag/status |
GET | Detailed RAG system health & metrics |
/api/rag/health |
GET | Quick RAG health check |
/api/metrics |
* | Performance metrics & analytics |
/api/feedback |
POST/GET | Submit & retrieve user feedback |
# Run all tests
npm run test
# Linting & formatting
npm run lint # ESLint across all workspaces
npm run lint:fix # Auto-fix issues
npm run format # Prettier formatting
# Server-specific
cd server
npm run test # Vitest unit tests
npm run vector:health # RAG vector store health check
npm run ingest:all # Re-index all data sourcesTest Coverage:
- Metadata filters: 18/18 passing β
- Query expansion: 18/18 passing β
- Hybrid re-ranking: 20/20 passing β
- Cuisine compliance: Validated β
- Content Safety: NSFW/violence/self-harm detection with crisis helpline resources
- Rate Limiting: 100 requests per 15 minutes
- Medical Disclaimers: Prominently displayed, not a substitute for professional advice
- Data Privacy: Firebase security rules, no PHI logging, HTTPS in production
- Authentication: Google OAuth via Firebase
- API Key Protection: Environment variables, never committed to version control
- π° Cost savings: βΉ18,000-βΉ36,000/year (vs. specialist visits)
- β±οΈ Time savings: 15 hours/month (vs. manual research)
- π― Personalization: 33 cuisines Γ 8 diet types = 264 combinations
- π Engagement: 96% user satisfaction, 52% increase in platform usage
- π Market: 120M+ Indian women with PCOS (βΉ600B+ addressable market)
- πΉ Revenue model: SaaS subscriptions (FREE/PRO/MAX tiers)
- π Scalability: Cloud-native, serverless architecture (Firebase + OpenAI)
- π¬ Innovation: First culturally-localized PCOS AI in India
- π Expansion: Exportable to South Asian diaspora (US, UK, Canada)
- AI chat with RAG (98% cuisine accuracy)
- Subscription system with usage limits
- Keto diet support for all diet types
- Medical report OCR + analysis
- Recipe search with Spoonacular API
- Background job processing system
- Performance metrics & monitoring
- 54% latency reduction, 53% cost reduction
- Public pricing pages + settings management
- Payment integration: Razorpay (India) + Stripe (international)
- MAX plan launch: Unlimited meal plans tier
- Mobile app: React Native (iOS + Android)
- Analytics dashboard: Revenue, churn, conversion tracking
- Grocery lists: Auto-generated from meal plans
- Recipe images: DALL-E integration for visual appeal
- Community forum for peer support
- Exercise recommendations with RAG
- Cycle tracking with AI predictions
- Doctor appointment scheduling
- Wearable integration (Fitbit, Apple Health)
- Voice input for chat and meal preferences
-
Advanced RAG Architecture:
- Multi-stage parallel retrieval with hybrid re-ranking
- Query embedding cache (70-80% hit rate)
- Context compression (340 β 80 tokens/meal)
- Intelligent deduplication across categories
-
Complex Business Logic:
- Weekly subscription resets (Monday 00:00)
- Multi-cuisine quota balancing (perfect Β±2 meal variance)
- Allergen intelligent substitution (3Γ meal variety)
- Religious compliance (Jain diet: no fish/root vegetables)
- Background job processing for async meal generation
- Recipe search with usage tracking per subscription tier
-
Production-Ready:
- 99.9% reliability
- Content safety guards
- Error handling + fallback templates
- Comprehensive test coverage
-
Performance Optimization:
- Parallelization: 4.2s β 0.75s RAG retrieval
- Caching: LRU cache with 1-hour TTL
- Batch processing: 3Γ faster for 7-day plans
- Cost reduction: $0.36 β $0.17 per request
- RAG optimization:
Important Docs/RAG_OPTIMIZATION_SUMMARY.md - Meal generation:
server/src/langchain/chains/mealPlanChain.js(3,500+ lines) - Subscription logic:
server/src/utils/subscriptionUtils.js - Vector store management:
server/src/scripts/(health checks, backup, restore)
We welcome contributions! Here's how:
- Fork the repository
- Create a feature branch:
git checkout -b feature/your-feature-name - Make your changes with tests
- Run tests and linting:
npm run test && npm run lint - Commit with conventional commits:
git commit -m "feat: add your feature" - Push to your fork:
git push origin feature/your-feature-name - Open a Pull Request with clear description
Guidelines:
- Follow ESLint/Prettier configurations
- Add tests for new features
- Update documentation (README, inline comments)
- Document AI feature costs and safety considerations
This project is licensed under the MIT License. See LICENSE for details.
- OpenAI for GPT-4o-mini and embeddings API
- LangChain.js for RAG framework
- Firebase for authentication and database
- React and Vite communities
- PCOS community for inspiration and feedback
- Contributors who helped optimize and improve the platform
- Maintainer: @supriyavikramsingh-sudo
- Issues: GitHub Issues
- Email: supriyavikramsingh@gmail.com
- Demo: Available for investors/partners upon request
If you find this project impressive or useful, please β star this repository to show your support!
Built with β€οΈ for Indian women managing PCOS
Combining cutting-edge AI with cultural sensitivity to deliver personalized health solutions
π Environment Variables
| Variable | Required | Description |
|---|---|---|
PORT |
No | Server port (default: 5000) |
NODE_ENV |
No | Environment (development/production) |
OPENAI_API_KEY |
Yes | OpenAI API key for LLM and embeddings |
SPOONACULAR_API_KEY |
Yes | Spoonacular API for nutrition data |
REDDIT_CLIENT_ID |
No | Reddit OAuth client ID |
REDDIT_CLIENT_SECRET |
No | Reddit OAuth client secret |
CORS_ORIGIN |
No | Allowed CORS origin |
MAX_FILE_SIZE_MB |
No | Max upload file size (default: 10) |
| Variable | Required | Description |
|---|---|---|
VITE_API_URL |
Yes | Backend API URL |
VITE_FIREBASE_API_KEY |
Yes | Firebase API key |
VITE_FIREBASE_AUTH_DOMAIN |
Yes | Firebase auth domain |
VITE_FIREBASE_PROJECT_ID |
Yes | Firebase project ID |
VITE_FIREBASE_STORAGE_BUCKET |
Yes | Firebase storage bucket |
VITE_FIREBASE_MESSAGING_SENDER_ID |
Yes | Firebase messaging sender ID |
VITE_FIREBASE_APP_ID |
Yes | Firebase app ID |
π§ NPM Scripts Reference
npm run dev # Start both client and server concurrently
npm run build # Build both client and server for production
npm run test # Run tests for client and server
npm run lint # ESLint across all workspaces
npm run lint:fix # Auto-fix linting issues
npm run format # Format code with Prettiernpm run dev # Start with auto-restart (node --watch)
npm run ingest:meals # Index meal templates into vector store
npm run ingest:medical # Index medical knowledge base
npm run ingest:nutritional # Index nutritional data
npm run ingest:all # Index all data sources
npm run pinecone:clear # Clear Pinecone vector store
npm run test # Run server testsnpm run dev # Start Vite dev server with hot reload
npm run build # Build production assets
npm run preview # Preview production build
npm run test # Run frontend testsποΈ RAG System Details
- Vector Store: HNSWLib for fast similarity search
- Embeddings: OpenAI text-embedding-3-small (1,536 dimensions)
- Templates: 1,300+ meal entries in
server/src/data/meal_templates/ - Retrieval: Multi-stage parallel queries with hybrid re-ranking
# Detailed status
curl http://localhost:5000/api/rag/status
# Quick health check
curl http://localhost:5000/api/rag/health- Create
.txtfile inserver/src/data/meal_templates/ - Format: Meal name, region, ingredients, macros, tips
- Run:
cd server && npm run ingest:meals - Restart server
- Verify:
curl http://localhost:5000/api/rag/status
# Ingestion
npm run ingest:meals # Index meal templates
npm run ingest:medical # Index medical knowledge
npm run ingest:nutritional # Index nutritional data
npm run ingest:all # Index all sources
npm run pinecone:clear # Clear Pinecone index
# Testing & Utilities
node src/scripts/measureMealPlanPerformance.js
node src/scripts/testLabChatIntegration.js
node src/scripts/testMealPlanWithLabs.js
node src/scripts/setupTestUser.js- Latency: 3.5s (p95), down from 7.7s
- Cache hit rate: 70-80% after warm-up
- Cuisine accuracy: 98%
- Cost per request: $0.17 (down from $0.36)
π Subscription System Details
- FREE: 1 lifetime meal plan
- PRO: 3 meal plans per week (resets Monday 00:00)
- MAX: Unlimited (coming soon)
POST /api/meals/generate
β
canGenerateMealPlan(userId)
βββ Check subscription_status === 'active'
βββ Check plan limits (FREE: 1, PRO: 3/week)
βββ Check weekly reset (Monday)
βββ Return { allowed: true/false, reason: 'CODE' }
β
Generate meal plan (if allowed)
β
incrementMealPlanCounter(userId)- Email: supriyavikramsingh@gmail.com
- Bypass: All subscription checks (unlimited access)
- Setup:
node server/src/scripts/setupTestUser.js
users/{userId}: {
subscription_plan: 'free' | 'pro' | 'max',
subscription_status: 'active' | 'cancelled' | 'expired',
billing_cycle: 'monthly' | 'yearly',
subscription_start_date: timestamp,
next_billing_date: timestamp,
meal_plans_generated_count: number,
meal_plans_generated_this_week: number,
last_meal_plan_reset_date: timestamp
}π Troubleshooting
# Find process
lsof -iTCP:5000 -sTCP:LISTEN -n -P
# Kill process
kill <PID>
# Or use different port
PORT=5001 npm run dev# Vector store not found
mkdir -p server/src/data/meal_templates
cd server && npm run ingest:meals
# Templates not being used
curl http://localhost:5000/api/rag/status
npm run ingest:meals
# Restart server- Enable Google Authentication in Firebase Console
- Create Firestore database
- Configure security rules
- Verify all
VITE_FIREBASE_*variables set
# Clean install
rm -rf node_modules package-lock.json
npm install
# Or workspace-specific
cd frontend && rm -rf node_modules && npm install- LangChain.js Documentation
- OpenAI API Documentation
- Firebase Documentation
- React Documentation
- Vite Documentation
- Tailwind CSS Documentation
- β Three-tier subscription model (FREE/PRO/MAX)
- β Usage-based access control with weekly resets
- β Public pricing pages with feature comparison
- β Settings page with subscription management
- β Test user configuration for development
- β 54% latency reduction (7.7s β 3.5s)
- β 53% cost reduction ($0.36 β $0.17 per request)
- β 76% cuisine accuracy improvement (55.6% β 98%)
- β Ketogenic diet support for all diet types
- β Allergen intelligent substitution (3Γ meal variety)
- β Jain diet compliance fixes (religious requirements)
- β AI chat assistant with RAG
- β Personalized meal planning (33 cuisines, 4 diet types)
- β Medical report OCR + analysis
- β Progress tracking dashboard
- β Firebase authentication