A React Native (Expo) mobile application that helps users discover recipes based on ingredients they already have at home.
The app allows users to enter available ingredients, validates them through TheMealDB ingredient list, and displays recipe suggestions with images, ingredient details, and step-by-step cooking instructions.
What's in Your Fridge? is a mobile recipe discovery app designed around a simple idea: users should be able to cook with what they already have.
The app combines a clean mobile interface, ingredient-based search, Firebase Authentication, and TheMealDB API to provide personalized recipe results.
- React Native
- Expo
- JavaScript
- Firebase Authentication
- TheMealDB API
- React Navigation
- User authentication with Firebase
- Ingredient input and validation
- Recipe search based on available ingredients
- Recipe result list with images
- Detailed recipe pages with ingredients and instructions
- Profile/password update flow
- Account deletion flow
- Clean and minimal mobile UI
- The user signs in or creates an account through Firebase Authentication.
- The user enters ingredients they currently have.
- The app validates ingredients using TheMealDB ingredient list.
- The app fetches matching recipes from TheMealDB API.
- The user can open each recipe to view ingredients and step-by-step instructions.
whatIsInMyFridge/
├── assets/
├── components/
│ ├── HomePage.js
│ ├── IngredientInput.js
│ ├── IngredientList.js
│ └── RecipeList.js
├── screens/
│ ├── AuthScreen.js
│ ├── ProfileUpdate.js
│ ├── RecipeDetailScreen.js
│ └── RecipeListScreen.js
├── App.js
├── app.json
├── package.json
└── README.md
This repository does not include production Firebase credentials.
Create a firebase.js file in the project root using the example below:
import { initializeApp } from "firebase/app";
import { getAuth } from "firebase/auth";
const firebaseConfig = {
apiKey: "YOUR_FIREBASE_API_KEY",
authDomain: "YOUR_PROJECT.firebaseapp.com",
projectId: "YOUR_PROJECT_ID",
storageBucket: "YOUR_PROJECT.appspot.com",
messagingSenderId: "YOUR_SENDER_ID",
appId: "YOUR_APP_ID"
};
const app = initializeApp(firebaseConfig);
export const auth = getAuth(app);git clone https://github.com/Busrwa/whatIsInMyFridge.git
cd whatIsInMyFridge
npm install
npx expo startReact Native / Mobile App / Recipe Discovery App
This project is for academic and portfolio purposes.