A mobile app built with React Native + Expo + TypeScript that lets you discover random meals, filter by category, and search for specific recipes using TheMealDB API.
- 🎲 Surprise Me! — Fetch a completely random meal with one tap from the home screen.
- 🔍 Browse by Category — Explore meals filtered by cuisine type.
- 🌍 Browse by Cuisine — Filter meals by country/area using the tab switcher in the Browse screen.
- 🔎 Search Recipes — Find any dish by name with live results.
- 🥕 Ingredient Search — Browse and search the full ingredient list to discover meals that use a specific ingredient.
- ⚖️ Ingredient Scaler — Adjust the serving size (1–10×) directly on the meal detail page and watch all ingredient quantities update in real time.
- 🗂️➕ Quick Add to Collection — Add any meal to one of your collections directly from the meal detail page, without navigating away.
- ❤️ Favourites — Save meals locally and access them anytime, even offline.
- 🕐 Recently Viewed — Quick access to the last meals you opened.
- 📅 Meal Planner — Assign breakfast, lunch, and dinner to each day of the week from your favourites.
- 🛒 Shopping List — Auto-generate a grocery list from your saved meals; check off items as you shop.
- 🗒️ Personal Notes — Write and save a private note on any meal, editable and deletable at any time.
- 📊 Your Kitchen — Stats overview showing favourites, custom meals, planner progress, shopping list completion, streak, and more.
- 🗂️ Collections — Organise saved meals into custom named lists (e.g. "Quick Dinners", "Date Night") with emoji icons.
- 🔥 Daily Challenge & Streak — A new random meal challenge every day; mark it as cooked to build a consecutive cooking streak with milestone badges.
- 📚 Custom Meals — Create, edit, and delete your own recipes with photo support.
- 📶 Offline Support — Cached meals are available without a network connection.
- 💀 Skeleton loaders — Smooth loading placeholders throughout the app.
- 📺 YouTube & Source links — Watch video walkthroughs or visit the original recipe source.
- 📤 Share meals — Share any recipe via the native share menu.
- 🎨 Modern UI — Dark-themed, responsive design powered by NativeWind (Tailwind CSS).
- ⚡ Optimised lists — Windowed rendering for large meal collections.
- Clone the repository:
git clone https://github.com/yourusername/meal-generator.git
cd meal-generator
npm install- Start the Expo development server:
npx expo start- Install EAS CLI if you haven’t already:
npm install -g eas-cli- Log in to your Expo account:
eas login- Configure your project for EAS builds:
eas build:configure- Build the APK:
eas build --platform android --profile production- Once the build is complete, download the APK from the provided link.
This project is licensed under the MIT License. See the LICENSE file for details.



