
Native e-commerce app built with SwiftUI and an MVVM structure: animated home feed with a flash-sale timer, live search, product detail with colour and size options, cart with promo codes, a three-step checkout, wishlist, profile and local notifications.
- My role
- Sole developer — design, SwiftUI build, state management
- Links
- GitHub (planned) ↗
- Stack
- SwiftXcode
- Swift · SwiftUI · Combine · MVVM · UserNotifications · Xcode
- Microsoft-ecosystem fit
▸ Accessibility: Dynamic Type, semantic labels
15
Swift source files
8
Core screens
Light / Dark
Semantic colour themes

Source · Captured from the app running in the iOS Simulator (iPhone 17 Pro, iOS 26.2)
On device.
6 captured screens

Sign in
Email, Apple and Google entry points

Home
Banner carousel, categories, flash sale

Product detail
Colour, size and quantity

Search · dark mode
Recent and trending searches

Cart
Empty state

Profile
Account and preferences
01 — Problem
Show a complete native shopping flow on iOS, from first launch to order confirmation, with the polish users expect from production apps.
02 — Approach
- 01
MVVM: view models own auth, catalogue, cart and checkout state; views stay declarative and small.
- 02
Combine drives live, debounced search and the flash-sale countdown; cart totals and delivery fees recompute as state changes.
- 03
Product detail with colour and size pickers, quantity stepper and add-to-cart feedback; checkout runs Shipping → Payment → Review.
- 04
Semantic colours for automatic light and dark mode, Dynamic Type, spring animations, haptics and local notifications for order events.
03 — Architecture
System architecture
S01
SwiftUI views
S02
View models (MVVM)
S03
Combine publishers
S04
Cart + checkout state
S05
Persistence
S06
Local notifications
Outcome
A complete native shopping flow that runs on current iPhones in light and dark mode.
Next project
Real-time Detection & Tracking
