Personalized Yoruba dietary planning and wellness app
# YorubaDiet - Personalized Wellness App
A comprehensive AI-powered dietary web application focused on Nigerian Yoruba cuisine, providing personalized meal plans and recipes based on traditional ingredients, nutritional science, and individual health goals.
## Features
- 🥗 **Ingredient Encyclopedia**: Browse traditional Yoruba ingredients with nutritional data and health benefits.
- 🍲 **Recipe Discovery**: Filter recipes by dietary preferences (Vegan, Keto, Traditional, etc.).
- 📅 **Meal Planning**: Weekly or 28-day rotation plans with AI-powered recommendations.
- 🤖 **AI Chatbot**: Get instant Yoruba nutrition advice and cooking tips.
- 🔐 **Secure Profiles**: Manage health goals, dietary restrictions, and regional preferences.
## Tech Stack
### Frontend
- **Next.js** (App Router)
- **TypeScript** & **Tailwind CSS**
- **Zustand** (State Management)
- **Lucide React** (Iconography)
### Backend
- **Node.js** + **Express**
- **Prisma** (ORM)
- **PostgreSQL** (Production Database)
- **OpenAI** & **Google Gemini** (AI Integrations)
- **JWT** (Authentication)
---
## 🚀 Deployment Guide
This project is optimized for deployment on **Netlify** (Frontend) and **Render** (Backend).
### 1. Backend (Render)
1. Create a **PostgreSQL** instance on Render.
2. Create a **Web Service** for the `server` folder.
3. Configure **Environment Variables**:
- `DATABASE_URL`: Your PostgreSQL connection string.
- `JWT_SECRET`: A secure random string.
- `OPENAI_API_KEY`: For recipe generation.
- `GOOGLE_API_KEY`: For the AI Chatbot.
- `FRONTEND_URL`: Your live Netlify URL (e.g., `
yorubadiet.netlify.app`).
- `FRONTEND_URLS`: (Optional) Comma-separated list of allowed frontend origins for CORS (e.g., `
yorubadiet.netlify.app,https`).
- `ALLOWED_HOST_SUFFIXES`: (Optional) Comma-separated host suffixes to allow preview domains (default: `netlify.app,onrender.com`).
### 2. Frontend (Netlify)
1. Create a new site from your Git rep …