This e-commerce app was developed by :
- The app includes a splash screen with an icon representing the app.
- The onboarding screens appear when the user opens the app for the first time.
- They provide details about the e-commerce store, including its top-notch security.
- After completing the onboarding process, it won't reappear, and the user is directed to the Welcome Screen.
- The Welcome Screen provides options to log in, sign up, or log in as a guest.
- It serves as the entry point after the onboarding process is complete.
- Users can either log in or sign up for a new account.
- The signup process allows users to upload a profile picture, enter their name, email, and password and now includes an option to input their phone number.
- A "Forgot Password" feature enables users to reset their passwords by receiving a reset email.
- An alternative method is signing up using a Google account.
- The home page displays a carousel showcasing different categories like beauty, fragrances, furniture, and groceries.
- Users can browse items within a specific category and view details, including the old and new prices of products.
- Products can be added to the shopping cart, and users can adjust the quantity.
- The app shows available stock, and users can't add more items than the stock allows.
- Once the stock runs out, the product is marked as "Out of Stock" in real-time.
- Users can add or remove items from their favorites list, with the old and new prices displayed.
- The favorites list is dynamically updated.
- Each user's favorite products are linked with their email in Firebase, ensuring that each customer has their list of favorite products.
- The app supports Dark Mode for a more comfortable viewing experience, reducing eye strain.
- Users can toggle between Dark Mode and Light Mode.
- The search bar provides real-time suggestions while typing and shows product ratings and comments.
- Users can search for specific items using keywords.
- The Products Page includes detailed information about each product, including images, descriptions, and pricing.
- Users can view comments and replies related to the product.
- The app allows users to share products with anyone via social media, email, or any other sharing platform.
- The "Share" button on the product details page generates a shareable link or product image, making it easy for users to share their favorite items with friends or family.
- This feature enhances product visibility and engagement beyond the app.
- Users can leave comments on products.
- Others can reply to comments, creating a discussion around each product.
- The filter button allows users to sort and filter products by different criteria.
- Users can update their profile picture, username, and password.
- The app supports multiple languages, including English, Arabic, French, and Spanish.
- The app includes a translation feature that allows users to switch between different languages, including English and French easily.
- This feature ensures that customers from different regions can enjoy a personalized shopping experience in their preferred language.
<img src="https://github.com/Fady2024/Ecommerce-app/blob/main/App%20Photos/Translate%201.png" alt="Onboarding Screen 3" width="300"/>
- Users can update their profile information, including changing their profile picture, name, phone number, and password.
- The option to delete their account is also available, allowing users to manage their accounts effectively.
- The app provides details about the developers.
- Dart: The used programming language.
- Flutter: For building the app.
- Bloc State Management: To manage app state.
- Firebase: This is for backend services.
- Google Sign-In API: For authentication.
- Clone the repository:
git clone https://github.com/Fady2024/Ecommerce-app.git - Install dependencies:
flutter pub get - Run the app:
flutter run
The DayNightSwitch library (Copyright (c) 2022 Divyanshu Bhargava) was used in the development of this application, providing the feature to toggle between light and dark modes. You can view the code and more details here.























