Coder Social home page Coder Social logo

iezed / nibbles-ecommerce-food Goto Github PK

View Code? Open in Web Editor NEW

This project forked from mo7amedaliebaid/nibbles-ecommerce-food

0.0 0.0 0.0 12.62 MB

Ecommerce - Complex UI - Food App - Firebase Firestore /Auth - FCM - Bloc Pattern - Qr Code

License: MIT License

C++ 6.37% C 0.38% Objective-C 0.01% Kotlin 0.04% Dart 86.98% Swift 0.69% HTML 0.50% CMake 5.03%

nibbles-ecommerce-food's Introduction

In Development [๐Ÿ‘€๐Ÿ”„ 70% ].

Nibbles - Flutter Food App ๐Ÿ”๐Ÿ•๐Ÿฐ

Nibbles is a Flutter-based food app designed to provide users with a delightful and user-friendly experience as they explore a variety of meals and food packages. The app utilizes the Bloc pattern and Cubits for efficient state management, integrates Firebase Firestore for real-time data storage, and incorporates various plugins to enhance its functionality.

Features

  • Ecommerce Experience: Enjoy a seamless ecommerce experience, effortlessly exploring a diverse range of meals and food packages.

  • Complex UI Design: Immerse yourself in a visually appealing and sophisticated user interface for an engaging experience.

  • Firebase Integration: Access real-time data with Firebase Firestore, ensuring the latest information on meals and food packages.

  • Authentication: Sign up and sign in securely using Firebase Authentication, providing a reliable and safe user experience.

  • Search Functionality: Easily find specific meals or food packages based on preferences with a robust search feature.

  • Qr Code Scanner: Quickly access relevant information through the integrated Qr code scanner.

  • Favourite Lists: Manage your favourite lists, making it convenient to keep track of preferred meals and food packages.

  • Filter Options: Refine your search with filter options based on specific criteria, enhancing the overall browsing experience.

  • Contact Us: Connect with app administrators using the "Contact Us" feature.

  • App Info Screens: Access essential app-related information with informative screens such as "About" and "Privacy.".

  • Kid Accounts: Enable users to create accounts for their kids with a dedicated AddKidScreen.

  • Responsive Layouts: The UI design is responsive, adapting gracefully to various screen sizes.

Directory Structure

The project is organized into several directories:

  • application: Contains feature Blocs, global Cubits, and logic for state management.

  • configs: Includes configuration files such as spaces, app text and typography.

  • core: Houses fundamental app components like the main app file, enums, router, extensions, constants, etc.

  • models: Contains data models used throughout the app, including structures for meals and users.

  • presentation: Encompasses the app's user interface, featuring screens and widgets for an enhanced visual experience.

  • repositories: Includes repositories for meals, packages, and other relevant data.

project_root
โ”‚
โ”œโ”€โ”€ ๐Ÿ“ application
โ”‚   โ”œโ”€โ”€ ๐Ÿ“ feature_blocs
โ”‚   โ”‚   โ””โ”€โ”€ ...
โ”‚   โ”œโ”€โ”€ ๐Ÿ“ global_cubits
โ”‚   โ”‚   โ””โ”€โ”€ ...
โ”‚   โ””โ”€โ”€ ...
โ”‚
โ”œโ”€โ”€ ๐Ÿ“ configs
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ apptext.dart
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ app_typography.dart
โ”‚   โ””โ”€โ”€ ...
โ”‚
โ”œโ”€โ”€ ๐Ÿ“ core
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ app.dart
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ enums.dart
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ extensions.dart
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ constants.dart
โ”‚   โ””โ”€โ”€ ...
โ”‚
โ”œโ”€โ”€ ๐Ÿ“ models
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ meal.dart
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ user.dart
โ”‚   โ””โ”€โ”€ ...
โ”‚
โ”œโ”€โ”€ ๐Ÿ“ presentation
โ”‚   โ”œโ”€โ”€ ๐Ÿ“ screens
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ home_screen.dart
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ search_screen.dart
โ”‚   โ”‚   โ””โ”€โ”€ ...
โ”‚   โ””โ”€โ”€ ๐Ÿ“ widgets
โ”‚       โ”œโ”€โ”€ ๐Ÿ“„ custom_button.dart
โ”‚       โ”œโ”€โ”€ ๐Ÿ“„ bottom_navbar.dart
โ”‚       โ””โ”€โ”€ ...      
โ”‚
โ””โ”€โ”€ ๐Ÿ“ repositories
    โ”œโ”€โ”€ ๐Ÿ“ meals_repos
    โ”œโ”€โ”€ ๐Ÿ“ packages_repos
    โ””โ”€โ”€ ...

Dependencies

  • flutter_svg: Renders SVG files for scalable and crisp vector graphics.

  • firebase_core: Essential functionality for initializing Firebase services within a Flutter app.

  • cloud_firestore: Facilitates seamless integration with Cloud Firestore, a NoSQL document database.

  • firebase_auth: Enables secure user authentication, supporting sign-up and sign-in processes.

  • smooth_page_indicator: Creates smooth and customizable page indicators for improved navigation.

  • buttons_tabbar: Provides a variety of customizable tab bar styles, enhancing visual appeal and user interaction.

  • equatable: Simplifies the implementation of equality and hash code methods for easier object comparison.

  • flutter_bloc: A state management library for organizing and separating business logic from UI components.

  • carousel_slider: Creates carousel sliders for implementing image sliders or other sliding content.

  • flutter_barcode_scanner: A plugin for scanning barcodes and QR codes using the device's camera.

  • url_launcher: Opens URLs in the default web browser, facilitating external content connections.

  • connectivity_plus: Provides a simple and efficient way to monitor the network connectivity status of a device.

  • firebase_messaging: Flutter plugin for Firebase Cloud Messaging, a cross-platform messaging solution that lets you reliably deliver messages on Android and iOS.

  • flutter_local_notifications A cross platform plugin for displaying and scheduling local notifications for Flutter applications with the ability to customise for each platform.

These dependencies collectively contribute to the functionality, design, and user experience of the Nibbles Flutter app, ensuring a robust and feature-rich application for exploring meals and food packages.

Blocs and Cubits

  • AuthBloc
  • CategoriesBloc
  • UserBloc
  • SignUpBloc
  • SignInBloc
  • PackagesBloc
  • MealsBloc
  • NavigationCubit
  • FavoriteMealsCubit
  • SearchCubit
  • FavouritePackagesCubit
  • FilterCubit
  • ContactUsCubit
  • AddKidsCubit
  • GetKidsCubit.
  • KidsStepsCubit
  • AddAddressCubit
  • GetAddressesCubit
  • ConnectivityCubit

Screens

  • AboutScreen
  • AddKidScreen
  • CategoriesScreen
  • ContactScreen
  • FavoritesScreen
  • HomeScreen
  • IntroScreen
  • LoginScreen
  • MealDetailsScreen
  • MealsByCategoryScreen
  • MoreScreen
  • SelectKidScreen
  • OffersScreen
  • PackagesScreen
  • PrivacyScreen
  • ProfileScreen
  • QrCodeScreen
  • RootScreen
  • SearchScreen
  • SignUpScreen
  • AdsScreen
  • SplashScreen
  • TermsScreen

Getting Started

To get started with Nibbles:

  1. Clone the repository to your local machine.
  2. Open the project in your preferred Flutter development environment.
  3. Ensure you have the necessary dependencies installed using flutter pub get.
  4. Run the app on your preferred emulator or physical device.

Feel free to explore and customize the app according to your needs. Share your feedback!

License

This project is licensed under the MIT License, allowing for flexibility and collaboration.

Happy coding and happy nibbling with Nibbles! ๐Ÿ”๐Ÿ•๐Ÿฐ

Demos

nibbles-50.mp4
authentication.mp4
search-meals-by-qrCode-nibbles.mp4
contactus.mp4

nibbles-ecommerce-food's People

Contributors

mo7amedaliebaid avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.