Chefini is an intelligent culinary companion that turns your leftovers into gourmet meals, plans your weekly batch cooking, and scientifically rescues dishes gone wrong. Built with Next.js 16 and powered by Llama 3 (Groq), it features a bold brutalist aesthetic and practical AI tools for the modern home cook.
- Overview
- Prerequisites
- Technologies Utilized
- Features
- Run Locally
- Deployment
- Configuration
- Project Structure
- Privacy & Safety
- License
- Contact
Cooking shouldn't be stressful or wasteful. Chefini solves common kitchen chaos with three core pillars:
- Resourcefulness: Instantly generate recipes from whatever ingredients you have on hand.
- Planning: Create structured 3-5 day meal prep plans to save time and money.
- Rescue: A scientific "Flavor Rescue Lab" to fix salty, spicy, or bland dishes in real-time.
All wrapped in a high-contrast, partially accessible, and mobile-responsive Brutalist UI.
Before setting up Chefini, ensure you have:
- Node.js (v18.x or later)
- npm or pnpm
- MongoDB (Local or AtlasURI)
- Groq Cloud Account (for Llama 3 API)
- Framework:
Next.js 16 (App Router)
- Language:
TypeScript
- Database:
MongoDB (Mongoose)
- Styling:
Tailwind CSS
- AI Engine:
Groq SDK (Llama-3.3-70b-versatile)
- Auth:
NextAuth.js (v5 Beta)
- Emails:
Nodemailer / Resend
- Icons:
Lucide React
- PDF/Image Gen:
jsPDF & html2canvas
- πͺ Leftover Magic: Input your ingredients and get a tailored recipe instantly.
- π₯ Intelligent Diet Filtering: Toggle between Veg and Non-Veg recipes with instant visual feedback (π’/π΄).
- π Edge Authentication: Secure, lightning-fast route protection using Next.js Middleware and Auth.js.
- π± Smart Meal Prep: "Batch Compiler" creates a Sunday prep guide + daily runtime instructions for the week.
- π¨ Premium Brutalist UI: Custom dark-themed scrollbars and interactive elements designing for a unique experience.
- π Flavor Rescue Lab: Too salty? Too spicy? The AI analyzes the problem and provides a chemical/culinary fix.
- π‘οΈ AI Content Moderation: Inputs are validated to prevent gibberish or offensive content.
- π Digital Cookbook: Save, categorize, and manage your favorite AI-generated recipes.
- π Smart Shopping List: Auto-generated grocery lists from your meal plans.
- π€ Export Options: Download recipes and lists as high-quality PDFs or images.
- π± Fully Responsive: Optimized for use on your phone while cooking.
-
Clone the Repository:
git clone https://github.com/RanitDERIA/chefini.git cd chefini -
Install Dependencies:
npm install
-
Environment Setup: Create a
.envfile in the root directory:# Database MONGODB_URI=your_mongodb_connection_string # AI Provider GROQ_API_KEY=your_groq_api_key # Authentication AUTH_SECRET=your_nextauth_secret_key # Email (Optional) EMAIL_SERVER_USER=your_email EMAIL_SERVER_PASSWORD=your_password EMAIL_SERVER_HOST=smtp.example.com EMAIL_SERVER_PORT=587 EMAIL_FROM=[email protected]
-
Start Development Server:
npm run dev
-
Open Browser: Navigate to
http://localhost:3000.
Chefini is optimized for Vercel.
- Push to GitHub.
- Import project in Vercel.
- Add Environment Variables in Vercel Dashboard.
- Deploy.
- Groq Model: Defaults to
llama-3.3-70b-versatilefor balance of speed and creativity. Configurable inapp/api/...routes. - Theme: The "Brutalist" theme uses standard Tailwind colors extended in
tailwind.config.js(chefini-yellow,chefini-black).
Chefini/
βββ app/
β βββ (auth)/ # Authentication Routes
β β βββ login/
β β βββ signup/
β β βββ verify-otp/
β βββ (dashboard)/ # Protected User Interface
β β βββ batch/ # "Batch Cooking" Feature
β β βββ cookbook/ # Saved Recipes
β β βββ dashboard/ # Main UI + AI Generation Trigger
β β βββ debug/ # "Scientific Rescue" (Flavor Debugger)
β β βββ shopping-list/ # Smart Grocery List
β βββ api/ # Backend API Routes
β β βββ generate/ # Llama 3 AI Logic Endpoint
β β βββ debug-dish/ # Flavor correction logic
β β βββ recipes/ # CRUD for user recipes
β βββ landing/ # Public Landing Page
βββ components/
β βββ ui/
β β βββ BatchCompiler.tsx # Logic for weekly meal planning
β β βββ CookMode.tsx # Step-by-step cooking interface
β β βββ FlavorDebugger.tsx # Scientific dish rescue UI
β β βββ RecipeModal.tsx # Recipe visualization
βββ lib/
β βββ auth.ts # NextAuth Configuration (Node.js)
β βββ mongodb.ts # Database Connection
β βββ ready-recipes.ts # Fallback/Static recipe data
βββ models/ # Mongoose Schemas
β βββ BatchPlan.ts
β βββ Recipe.ts
β βββ ShoppingList.ts
β βββ User.ts
βββ auth.config.ts # Edge-compatible Auth Config
βββ middleware.ts # Edge Middleware for Route Protection
βββ public/ # Static Assets
βββ next.config.mjs # Next.js Configuration
βββ tailwind.config.js # Styling Configuration
βββ package.json # Project Dependencies
- Content Safety: Integrated AI moderation ensures inputs are safe and relevant to cooking.
- Data: User data (recipes/plans) is stored securely in MongoDB. Passwords are hashed.
This project is licensed under the MIT License.
β Star this repository if you love cooking with AI!
Made with β€οΈ and π§ by Ranit Deria
