Drecipe is Flutter-based mobile application for iOS and Android for suggesting culinary recipes which I developed for my bachelor's final thesis.
- Sign In & Sign Up
- Confirm Email
- Reset Password
- Sign Out
- Delete Account
- Sign In without an Account
- Discover recipes by meal type, popularity, and healthiness.
- Find recipes based on the time of the day and pairing meal.
- Get recommended recipes based on your favorites.
- View detailed recipe information.
- Comprehensive ingredient lists.
- Step-by-step cooking instructions, including descriptions, required ingredients, and necessary equipment.
- Add or remove recipes from your favorites.
- Search for recipes with various filters.
- Find recipes based on specific ingredients, with options to include or exclude certain ingredients.
- Browse and manage your favorite recipes.
- Remove recipes from your favorites.
- Change the app's language.
- Switch between different themes.
- Architecture: The app follows the Clean Architecture principles and integrates with Flutter Riverpod.
- State Management: Managed with Riverpod.
- Authentication: Implemented using Firebase Auth.
- Remote Database: Cloud Firestore.
- Local Database: HiveDB.
- API Integration: The app communicates with the Spoonacular API using
retrofit
,dio
, andfreezed
. - Environment Management: Utilizes
flavorizr
for different build environments andenvied
for environment variables. - Navigation: Handled by
auto_route
. - UI Enhancements: Contains animations to enrich the user experience.
- Clone the repository.
- Navigate to the project directory.
- Run
flutter pub get
to install dependencies. - Set up your environment variables with
envied
and add your Spoonacular API key. - Choose the desired build environment with
flavorizr
. - Run
flutter run
to start the application.