Easy-Shoping is an E-Commerce app built using SwiftUI, following the MVVM architectural pattern. App fetches product data through API integration, empowering users to effortlessly explore a diverse range of offerings. Designed with a blend of MVVM and Clean Architecture, the app ensures an intuitive user experience, enabling easy product search, addition or removal of favorites, and seamless cart management for a better user experience.
Leveraging Swift, and SwiftUI, our design prioritizes user-friendliness, ensuring a smooth and enjoyable shopping journey. Inclusion of UITests and Unit Tests further ensures the app's reliability and functionality.
✔️ Create an account or log in to an existing account
✔️ Add/remove items to/from their cart.
✔️ Proceed with payment
✔️ User-Friendly UI – Designed with SwiftUI for a smooth and intuitive shopping experience.
✔️ Product Catalog – browse the product catalog.
✔️ Product Search & Filtering – Allows users to find products quickly using search functionality and filters.
✔️ Product Details – Displays comprehensive product information, including images, descriptions, and pricing.
✔️ Favorites/Wishlist – Users can add or remove products from their favorites list.
✔️ Shopping Cart – Seamless cart management, enabling users to add, update, or remove items.
✔️ Checkout & Order Summary – A simple and efficient checkout process with order details.
✔️ Secure Authentication – User login and registration functionality (if implemented).
✔️ User Profile Management – Users can manage their personal details and order history.
✔️ view orders history
- Swift Programming language - For interactive functionalities
- SwiftUI - For styling and layout, Animations & Smooth Transitions, and Enhancing user experience with SwiftUI animations.
- Error Handling & Network URL Session – Graceful handling of API failures or connectivity issues.
- MVVM Architecture - For structuring the app, and Ensuring separation of concerns for better scalability.
Profile | Home page | Favorites | Special Products |
---|---|---|---|
![]() |
![]() |
![]() |
![]() |
Sign up | Sign in | Onboarding | Product Detail |
---|---|---|---|
![]() |
![]() |
![]() |
![]() |
Address | Payment | Card bank | Orders |
---|---|---|---|
![]() |
![]() |
![]() |
![]() |
Order reviewing | Order details | Review | Loging |
---|---|---|---|
![]() |
![]() |
![]() |
![]() |
🔹 Add Upload profile picture functionality for accounts
🔹 Improve Search for Product functionality for home screen
🔹 Implement Local storage to save products
🔹 Improve Animations and UI transitions
To install and run Easy Shopping, follow these steps:
- Clone the repository to your local machine:
git clone https://github.com/MohamedAboElsaud/Easy-Shoping.git
-
Open the project in Xcode.
-
Build and run the project on your desired iOS 16+ device or simulator.
Open the ShopingAppSwiftUI.xcodeproj
file with Xcode and build the application in the simulator or on a device.
Contributions are welcome! If you have any ideas, suggestions, or improvements, feel free to fork this repository and submit pull requests. Feel free to open an issue or submit a pull request. Contributions are always welcome! 😊