This repository contains an Ecommerce Store App built with Flutter and Firebase. The app uses the GetX library for state management and follows the MVC (Model-View-Controller) design pattern. It provides a rich set of features for both sellers and buyers, allowing them to interact with the app seamlessly.
The Ecommerce Store App offers the following features:
- Login: Users can log in to the app using their credentials as buyer or seller.
- Register with Email Verification: New users can register by providing their email address and verifying it through a verification link sent to their email.
- Forget Password: Users who have forgotten their password can initiate a password reset process by providing their email address.
- State Persistence: The app maintains the state of the user's session, allowing them to resume their activities even after restarting the app.
- Dark Mode/Light Mode: The app supports both dark and light themes, allowing users to choose their preferred appearance.
- Add Product: Sellers can add new products to the app, providing details such as name, description, price, image and stock availability.
- Delete Product: Sellers have the ability to remove products from their inventory.
- Update Product: Sellers can modify the details of their existing products, such as name, description, price, image and stock availability.
- Search from Seller's Products: Sellers can search for specific products from their inventory.
- List All Products: Sellers can view a list of all the products they have added to the app.
- View Stocks: Sellers can check the current stock levels of their products.
- View Orders: Sellers can see the orders placed by buyers, along with the quantity and price of each order. This helps sellers manage their inventory and track sales.
- Manage Profile: Sellers can update their profile information, such as name, contact details, address, password and profile picture.
- Search Products: Buyers can search for products available.
- Add to Cart: Buyers can add products to their shopping cart for later purchase.
- Order Placement: Buyers can place orders for the products in their cart.
- Delete from Cart: Buyers can remove products from their shopping cart if they no longer wish to purchase them.
- Add Product to Favorites: Buyers can mark products as favorites, making it easier to access them in the future.
- View Product Details: Buyers can view detailed information about a specific product, including its description and price.
- View Order History: Buyers can see their order history, allowing them to track their purchases.
- Manage Profile: Buyers can update their profile information, such as name, contact details, address, password and profile picture.
To get started with the Ecommerce Shop app, follow these steps:
- Clone the repository:
git clone https://github.com/aliasar1/E-Commerce-Store-App.git
- Install the necessary dependencies by running
flutter pub get
. - Set up Firebase for your project and configure the necessary Firebase services (authentication, database, etc.).
- Configure the Firebase credentials in the app by updating the
google-services.json
file for Android. - Build and run the app on your preferred device or emulator using
flutter run
.
Please note that this README provides a high-level overview of the app and its features. For more detailed information, refer to the code documentation and comments within the project.
Contributions to the Ecommerce Store App are welcome! If you find any issues or would like to suggest enhancements, please open an issue or submit a pull request. Make sure to follow the repository's code style and guidelines.
The Ecommerce Store App is open-source and released under the MIT License. Feel free to modify and use the code in accordance with the license terms.