Brunch Bliss

Overview

Brunch Bliss is a sophisticated Android application designed to streamline the dining experience for both users and vendors. The app features robust authentication mechanisms, user-friendly interfaces for both user and vendor sides, and secure payment processing via Razorpay. It ensures a seamless and secure experience for all users involved in the brunch ordering and delivery process.

Features

Authentication

  • Login: Users can log in using their email and password.
  • Forgot Password: Users can reset their password by entering their email, receiving an OTP via mail, and then creating a new password.
  • Signup: New users can register by providing their email and password, followed by email verification to complete the account creation process.
  • Token Management: Implements access and refresh tokens, which are stored in datastore along with their expiry times for secure session management.

User Side

  • Canteen Selection: Users can browse and select from various canteens.
  • Add to Cart: Users can add items to their cart from the canteen menus.
  • Offers and Categories: Users can explore available offers, categories, and sub-categories to find their desired items.
  • Payment Gateway: Integrated with Razorpay for secure and easy online payments. Users receive a QR code upon successful payment, which can be scanned by the canteen for delivery verification.
  • QR Validation: Delivery verification is made by QR delivered to the user after successful payment
  • Wishlist: The user can wishlist several items to allow for a more reliable user experience

Vendor Side

  • Dynamic Menu Management: Vendors can manage their menu dynamically, adding or removing items as needed.
  • Order Management: Vendors can view and manage orders placed by users.
  • Payment Verification: Vendors can scan the QR code provided to users post-payment to verify and process deliveries.
  • Refund Button: Vendors have the option to issue refunds directly through the app, ensuring a seamless and customer-friendly refund process.

Additional Features

  • Barcode Scanning and Generation: The app includes barcode scanning and generation functionality using ZXing, allowing for quick and efficient order processing.
  • Offline Access: The app provides limited functionality in offline mode, ensuring that users can still view menus and manage orders even without internet access.
  • WishList: The user can maintain A proper wishlist that can be accessed online

Screenshots

Authentication Screens

Login Screen Signup Screen Forgot Password Screen Forgot Password Screen Forgot Password Screen Forgot Password Screen Forgot Password Screen Forgot Password Screen Forgot Password Screen

User Side Screens

Canteen Selection Screen Add to Cart Screen Payment Gateway Screen Canteen Selection Screen Add to Cart Screen Payment Gateway Screen Canteen Selection Screen Add to Cart Screen Payment Gateway Screen Canteen Selection Screen Add to Cart Screen Payment Gateway Screen Canteen Selection Screen Add to Cart Screen Payment Gateway Screen Canteen Selection Screen

Vendor Side Screens

Dynamic Menu Management Screen Order Management Screen Refund Button Screen Dynamic Menu Management Screen Order Management Screen Refund Button Screen Dynamic Menu Management Screen Order Management Screen Refund Button Screen

Dependencies

Brunch Bliss relies on the following key dependencies:

  • Retrofit: A type-safe HTTP client for Android and Java, Retrofit makes it easy to consume RESTful web services. It handles network requests, parsing responses, and serializing/deserializing data, simplifying API integrations.
  • ZXing: A barcode image processing library that supports scanning and generating barcodes. It's used for quick and efficient barcode-related functionalities within the app.
  • Razorpay: For integrating the payment gateway, allowing secure and seamless online payments.
  • Datastore Preferences: For local storage of tokens and their expiry times.
  • Glide: For efficient image loading .

Getting Started

To start using Brunch Bliss:

  1. Clone the repository: git clone https://github.com/your-repo/brunch-bliss-frontend.git
  2. Open the project in Android Studio.
  3. Build and run the application on an Android device or emulator.
  4. Log in or sign up using your email.
  5. Explore the user side to browse canteens and make orders, or switch to the vendor side to manage menus and orders.

Contributing

Contributions to Brunch Bliss are welcome! To contribute:

  1. Fork the repository.
  2. Create a new branch for your feature or bug fix: git checkout -b feature-name.
  3. Make your changes and commit them: git commit -m 'Add new feature'.
  4. Push to the branch: git push origin feature-name.
  5. Create a pull request with a detailed description of your changes.

Contact

For any inquiries or feedback regarding Brunch Bliss, please contact the maintainer.