A web application that generates meal plans using AI. The app takes user inputs including dietary restrictions, available ingredients, and nutritional goals to create customized daily or weekly meal plans with recipes and nutritional information.
- 🤖 AI-Powered Meal Generation: Utilizes advanced AI models to create personalized meal plans
- 🥗 Dietary Customization: Supports various diet types (Vegetarian, Vegan, Keto, Paleo, etc.)
- 📊 Nutrition Tracking: Detailed macro and micronutrient information for each meal
- 🏷️ Ingredient Management: Track your pantry and get recipes based on available ingredients
- 📱 Responsive Design: Seamless experience across all devices
- 🔐 Secure Authentication: Protected user data and preferences with configurable registration
Try it out: Demo Link (Coming Soon)
-
Frontend:
- Next.js 14 (App Router)
- Tailwind CSS
- shadcn/ui components
- Zustand (State Management)
-
Backend:
- Supabase (Authentication & Database)
- PostgreSQL
-
AI Integration:
- Advanced Language Models
- Structured JSON Output
- Intelligent Error Handling
- Node.js (v18 or higher)
- npm or yarn
- Supabase account
- Clone the repository
git clone https://github.com/yourusername/ai-meal-planner.git
cd ai-meal-planner
- Install dependencies
npm install
# or
yarn install
- Set up environment variables
cp .env.example .env.local
Fill in your environment variables:
NEXT_PUBLIC_SUPABASE_URL
: Your Supabase project URLNEXT_PUBLIC_SUPABASE_ANON_KEY
: Your Supabase anonymous keyVITE_REGISTRATION_ENABLED
: Set to 'true' to enable user registration, 'false' to disable (default: false)
- Run the development server
npm run dev
# or
yarn dev
Visit http://localhost:3000
to see the application.
- Sign Up/Login:
- Create an account (if registration is enabled) or login to access personalized features
- Registration can be enabled/disabled via the
VITE_REGISTRATION_ENABLED
environment variable
- Set Your Profile: Input your demographics and dietary preferences
- Add Ingredients: (Optional) List ingredients you have available
- Generate Meal Plan: Get AI-generated meal plans tailored to your needs
- View & Save: Save your favorite meal plans for future reference
The application supports flexible authentication configuration:
- Control user registration through the
VITE_REGISTRATION_ENABLED
environment variable - When disabled:
- Sign-up UI elements are hidden
- Registration endpoints return appropriate error messages
- Only existing users can log in
- To enable/disable registration:
- Set
VITE_REGISTRATION_ENABLED=true
orfalse
in your.env.local
- Restart the development server
- Changes take effect immediately
- Set
We welcome contributions! Please follow these steps:
- 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