How benjiavdullahu/fridgebuddy works
FoodStorage is a React Native app for tracking stored foods and finding recipes from ingredients. The main workflow is to open the inventory or capture a food photo, enter item details and expiry, save locally, and browse recipes for an item. App startup initializes SQLite and requests notification permission; saving an item schedules expiry reminders. The README also describes offline storage, image capture, and paginated recipe browsing. Source excerpts support the main screen, persistence, recipe, and notification connections; other documented details are represented only where their owning module is evident.
Main entry points: App.js App and navigation · ItemList.js Item list · ItemForm.js Item form · database.js SQLite access
Components 13
App navigation
- App and navigation
App.js - Home
components/Home.js
Food inventory
- Food camera
components/CameraComponent.js - Item form
components/ItemForm.js - Item list
components/ItemList.js - SQLite access
database/database.js - Local items database
Recipe discovery
- Recipe browser
components/RecipeView.js - Recipe API client
api/recipes.js
Other components
- FoodStorage user
- TheMealDB
- Device camera
- Expo notifications
Connections 16
- FoodStorage user → App and navigation: opens app
- App and navigation → Home: routes to
- App and navigation → SQLite access: initializes
- App and navigation → Expo notifications: requests permission
- Home → Item list: opens inventory
- Home → Food camera: opens camera
- Food camera → Device camera: captures photo
- Food camera → Item form: passes image
- Item form → SQLite access: saves or updates
- SQLite access → Local items database: reads and writes
- Item form → Expo notifications: schedules reminders
- Item list → SQLite access: loads or deletes
- Item list → Item form: opens for editing
- Item list → Recipe browser: opens recipes
- Recipe browser → Recipe API client: requests recipes
- Recipe API client → TheMealDB: fetches recipes