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.
- 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.
- 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
- 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.
- 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
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 .
To start using Brunch Bliss:
- Clone the repository:
git clone https://github.com/your-repo/brunch-bliss-frontend.git
- Open the project in Android Studio.
- Build and run the application on an Android device or emulator.
- Log in or sign up using your email.
- Explore the user side to browse canteens and make orders, or switch to the vendor side to manage menus and orders.
Contributions to Brunch Bliss are welcome! To contribute:
- Fork the repository.
- Create a new branch for your feature or bug fix:
git checkout -b feature-name
. - Make your changes and commit them:
git commit -m 'Add new feature'
. - Push to the branch:
git push origin feature-name
. - Create a pull request with a detailed description of your changes.
For any inquiries or feedback regarding Brunch Bliss, please contact the maintainer.