How ashrafcharlie/e-commerce-app works
This is a cross-platform Flutter e-commerce app. Its main user journey spans authentication, catalog and category browsing, cart and wishlist management, checkout, and order viewing, with profile access alongside it. The README documents BLoC, Clean Architecture, Firebase, and DummyJSON; the tree supports the feature paths below. Dart implementation excerpts were not provided, so internal call wiring is not inferred beyond documented integration responsibilities.
Main entry points: auth/data Auth data layer · main.dart App entry · product/data Product data layer · screens Login and signup
Components 21
App presentation
- App entry
lib/main.dart - Login and signup
lib/features/auth/presentation/screens - Home and discovery
lib/features/home/presentation/screens - User profile
lib/features/profile/presentation/screen
Commerce features
- Product browsing
lib/features/product/presentation/screen - Category filtering
lib/features/category/presentation - Cart management
lib/features/cart/presentation/screen - Wishlist
lib/features/wishlist/presentation/screen - Checkout
lib/features/checkout/presentation/screens/checkout_screen.dart - Order management
lib/features/order/presentation/screens
Data and services
- Auth data layer
lib/features/auth/data - Product data layer
lib/features/product/data - Category data layer
lib/features/category/data - Cart data layer
lib/features/cart/data - Wishlist data layer
lib/features/wishlist/data - Order data layer
lib/features/order/data
Shared foundation
- Shared utilities
lib/core
Other components
- Shopper
- Firebase Authentication
- Cloud Firestore
- DummyJSON API
Connections 13
- Shopper → App entry: opens
- App entry → Login and signup: starts app
- Shopper → Home and discovery: browses
- Shopper → Product browsing: searches
- Shopper → Category filtering: filters
- Shopper → Cart management: manages cart
- Shopper → Wishlist: manages wishlist
- Shopper → Checkout: checks out
- Shopper → Order management: views orders
- Shopper → User profile: views profile
- Auth data layer → Firebase Authentication: authenticates
- Auth data layer → Cloud Firestore: uses
- Product data layer → DummyJSON API: fetches products