Foodify is a feature-rich, beautifully animated Android application built entirely with Jetpack Compose and modern Android development practices. It consumes data from TheMealDB API to provide users with thousands of recipes, categorized by area, ingredient, and type.
Beyond discovering recipes, Foodify allows users to curate a personal list of favorite meals and intelligently extract recipe ingredients into a local Shopping Cart.
- Smart Discoverability: Filter meals seamlessly by Area, Category, or Ingredient using animated, interactive filter chips.
- Detailed Recipe Pages: View high-quality meal imagery, exact ingredient measurements, step-by-step instructions, and embedded YouTube tutorials.
- Favorites System: Save your go-to meals locally. The UI instantly reacts to database changes using Kotlin Flows.
- Smart Shopping Cart: Extract specific ingredients and measurements from a recipe via a beautiful popup dialog and add them to a dedicated, interactive shopping list.
- Fluid Animations: Features premium UI touches including crossfade screen transitions, animated bottom navigation bars, and reactive button states.
- Native Sharing: Easily share recipe links with friends and family using Android's native share sheet.
Foodify is built utilizing Clean Architecture principles and the MVVM (Model-View-ViewModel) design pattern to ensure separation of concerns, testability, and scalable code.
- UI: Jetpack Compose - Modern, declarative native UI toolkit.
- Language: Kotlin
- Asynchronous Programming: Coroutines & Flows - For handling background threads and reactive UI states.
- Dependency Injection: Dagger-Hilt - For robust, compile-time dependency injection.
- Local Database: Room - SQLite object mapping library for the Favorites and Shopping Cart systems.
- Network: Retrofit & Gson - For making type-safe REST API calls.
- Image Loading: Coil - For fast, lightweight image loading with Compose support.
- Navigation: Jetpack Compose Navigation - For routing and passing arguments between screens.
- Clone the repository:
git clone [https://github.com/Pop714/Foodify.git](https://github.com/Pop714/Foodify.git)