Yummify: A Fully-functional Restaurant Menu App using Flutter

Yummify

Yummify is a fully-functional restaurant menu app to demonstrate how we can make a scalable, and maintainable app in an understandable manner using an MVVM inspired architecture in Flutter.

Screenshots

Phone screenshots:

1 2 3
4 5 6

Tablet screenshots:

1 2 3
4 5 6

App Features:

  • Flutter + REST API (Backend Server, Storage)
    Url: http://185.223.93.215/login | Test account: operator@gmail.com / secret
  • Use Stacked pattern
  • Responsive (Mobil + Tablet)
  • User-friendly interface
  • Clean Architecture
  • Custom resuable widgets
  • Restaurant Categories
  • Category meals with bottom sheet based on content height
  • Use of local storage (Hive)
  • Make your order and view it from admin panel
  • More...

I plan to add more in the future (PRs welcome!).

Future Roadmap:

  • Polish the UI
  • Light/Dart Stacked Theme
  • Add more screens/features/functionalities

Installation

  • Clone the repo
    git clone https://github.com/Ruslanbek0809/Yummify.git
    
  • And then we can use the normal build and run procedure
    flutter pub get
    flutter run
    
  • Some files like *.g.dart, *.iconfig.dart are auto generated. If there is any issue from these files just run this command to regenerate them.
    flutter pub run build_runner build --delete-conflicting-outputs
    

Packages

This repository makes use of the following pub packages:

Package Version Usage
dio ^4.0.6 API*
connectivity_plus ^3.0.2 Network*
stacked ^3.0.1 State & Architecture*
stacked_services ^0.9.9 State & Architecture Services*
stacked_hooks ^0.2.2 State & Architecture Tool*
hive ^2.2.3 Storage*
hive_flutter ^1.1.0 Storage*
hive_generator ^2.0.0 Code Generation for Storage*
shared_preferences ^2.0.15 Persistent Storage*
logger ^1.1.0 Logging*
flutter_hooks ^0.18.5+1 Tool*
easy_localization ^3.0.1 Localization*
collection ^1.17.0 Tool*
flutter_launcher_icons ^0.11.0 Tool*
json_annotation ^4.7.0 Tool*
build_runner ^2.3.0 Code Generation for Others*
stacked_generator ^0.7.15 Code Generation for Stacked*
json_serializable ^6.5.4 Code Generation for JSON*
cached_network_image ^3.2.3 Others*
flutter_screenutil ^5.6.0 Others*
carousel_slider ^4.2.1 Others*
flutter_svg ^1.1.6 Others*
flutter_spinkit ^5.1.0 Others*
flash ^2.0.5 Others*
shimmer ^2.0.0 Others
bottom_sheet ^3.1.2 Others*
badges ^2.0.3 Others*
lottie ^2.2.0 Others*
dropdown_button2 ^1.9.2 Others*

*Recommended to keep regardless of your project.

Conclusion

I will be happy to answer any questions, please feel free to submit an issue and/or pull request 🙂

If you liked my project, don’t forget to ⭐ star the repo to show your support.

License

MIT © Ruslanbek

GitHub

https://github.com/Ruslanbek0809/Yummify