mzlatic99 / foodie-recipe_app

Gamified recipe app using Flutter framework, Firebase and Riverpod

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Foodie Gamified Recipe App

Foodie is a Flutter-based gamified recipe app designed to help you find culinary inspiration, cook, and compete in culinary duels. Complete challenges, earn points, and unlock rewards along the way.

Stack

  • Flutter framework
  • Dart language
  • Riverpod state management
  • Firebase for database, authentication, and storage
  • Architecture inspired by Andrea Bizzotto
  • Routing with goRouter package
  • Optimized for Android mobile devices

Features

  • User authentication using Firebase Auth
  • Fetching recipe data from Tasty API
  • Search for recipes
  • View recipe details and scale ingredients based on the number of servings
  • Step-by-step recipe process
  • Save favorite recipes using the Hive package
  • In-app chat with camera integration

Gamified features

  • Points system with levels: Earn points by completing challenges, cooking meals, and achieving rewards.
  • Cooking challenges: Complete challenges by cooking meals with specific ingredients.
  • Rewards: Earn achievement icons in your profile for completing challenges.
  • Duels between 2 users: Engage in a culinary duel with randomly generated recipes, and share pictures of your dishes with each other.

Packages

Installing

1. Try on an Android Device

If you want to try this application on a real Android smartphone:

  1. Go to the Flutter apk download page
  2. Tap on "View raw"
  3. Download and install the apk
  4. Open and enjoy!

2. Try in your IDE

If you want to explore and run the code:

  1. Clone the project to your local machine
  2. Set up Firebase in your Firebase project
  3. Register for a Tasty API key and add it to your project's environment variables
  4. Install all project dependencies by running:
flutter pub get
  1. Run the app using the following command:
flutter run

Screenshots

About

Gamified recipe app using Flutter framework, Firebase and Riverpod


Languages

Language:Dart 84.4%Language:C++ 7.7%Language:CMake 6.2%Language:Swift 0.7%Language:HTML 0.6%Language:C 0.5%Language:Kotlin 0.0%Language:Objective-C 0.0%