NoaTubic / drecipe

Drecipe: Flutter-based mobile application for iOS and Android, designed for culinary enthusiasts to discover and manage recipes. Features include authentication, recipe discovery by various criteria, detailed recipe views, favorites management, and advanced search capabilities. Integrated with the Spoonacular API for comprehensive recipe details

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Drecipe - iOS and Android application

Drecipe is Flutter-based mobile application for iOS and Android for suggesting culinary recipes which I developed for my bachelor's final thesis.

drecipe

๐ŸŒŸ Features

Authentication

  • Sign In & Sign Up
  • Confirm Email
  • Reset Password
  • Sign Out
  • Delete Account
  • Sign In without an Account

Recipe Discovery

  • 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.

Recipe Details

  • 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 & Filters

  • Search for recipes with various filters.
  • Find recipes based on specific ingredients, with options to include or exclude certain ingredients.

Favorite Recipes

  • Browse and manage your favorite recipes.
  • Remove recipes from your favorites.

App Customization

  • Change the app's language.
  • Switch between different themes.

๐Ÿ› ๏ธ Architecture & Libraries

  • 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, and freezed.
  • Environment Management: Utilizes flavorizr for different build environments and envied for environment variables.
  • Navigation: Handled by auto_route.
  • UI Enhancements: Contains animations to enrich the user experience.

๐Ÿš€ Getting Started

  1. Clone the repository.
  2. Navigate to the project directory.
  3. Run flutter pub get to install dependencies.
  4. Set up your environment variables with envied and add your Spoonacular API key.
  5. Choose the desired build environment with flavorizr.
  6. Run flutter run to start the application.

About

Drecipe: Flutter-based mobile application for iOS and Android, designed for culinary enthusiasts to discover and manage recipes. Features include authentication, recipe discovery by various criteria, detailed recipe views, favorites management, and advanced search capabilities. Integrated with the Spoonacular API for comprehensive recipe details


Languages

Language:Dart 95.1%Language:C++ 2.2%Language:CMake 1.8%Language:Ruby 0.3%Language:HTML 0.2%Language:Swift 0.2%Language:C 0.1%Language:CSS 0.1%Language:JavaScript 0.0%Language:Kotlin 0.0%Language:Objective-C 0.0%