How horratha/beckie_deal_app_android works
Beckie Deal is an Android shopping app for product discovery, purchasing, and account management. The principal flow is browsing or searching a catalog, inspecting a product, managing a cart, completing checkout and payment, then viewing orders; wishlists, promotions, reviews, and profiles are parallel capabilities. The README documents the major features and REST integration. Sampled code confirms selected repository, API, and network relationships; unsampled screen-to-screen and service wiring is shown only where documented or left unverified.
Main entry points: ProductRepository.java Product catalog data · CategoryDetailActivity.java Categories and brands · CheckoutActivity.java Checkout · ReviewRepository.java Product reviews
Components 25
Catalog discovery
- Home and navigation
app/src/main/java/aeu/ratha/beckie_deal_app/ui/activities/main/MainActivity.java - Categories and brands
app/src/main/java/aeu/ratha/beckie_deal_app/ui/activities/product/CategoryDetailActivity.java - Search and filters
app/src/main/java/aeu/ratha/beckie_deal_app/ui/activities/product/SearchActivity.java - Product details
app/src/main/java/aeu/ratha/beckie_deal_app/ui/activities/product/ProductDetailActivity.java
Shopping and orders
- Cart management
app/src/main/java/aeu/ratha/beckie_deal_app/ui/activities/cart/CartActivity.java - Checkout
app/src/main/java/aeu/ratha/beckie_deal_app/ui/activities/checkout/CheckoutActivity.java - Payment
app/src/main/java/aeu/ratha/beckie_deal_app/ui/activities/payment/KhqrPaymentActivity.java - Order tracking
app/src/main/java/aeu/ratha/beckie_deal_app/ui/activities/cart/MyOrdersActivity.java
Identity and engagement
- Sign-in and verification
app/src/main/java/aeu/ratha/beckie_deal_app/ui/activities/auth/LoginActivity.java - Profile and preferences
app/src/main/java/aeu/ratha/beckie_deal_app/ui/activities/profile/ProfileActivity.java - Wishlist
app/src/main/java/aeu/ratha/beckie_deal_app/ui/activities/profile/WishlistActivity.java - Product reviews
app/src/main/java/aeu/ratha/beckie_deal_app/data/repository/ReviewRepository.java - Coupons and promotions
app/src/main/java/aeu/ratha/beckie_deal_app/utils/managers/CouponManager.java
Data and networking
- Product catalog data
app/src/main/java/aeu/ratha/beckie_deal_app/data/repository/ProductRepository.java - Product model
app/src/main/java/aeu/ratha/beckie_deal_app/data/models/Product.java - Cart repository
app/src/main/java/aeu/ratha/beckie_deal_app/data/repository/CartRepository.java - Cart model
app/src/main/java/aeu/ratha/beckie_deal_app/data/models/Cart.java - Authentication API
app/src/main/java/aeu/ratha/beckie_deal_app/data/api/AuthApiService.java - Review API
app/src/main/java/aeu/ratha/beckie_deal_app/data/api/ReviewApiService.java - Brand model
app/src/main/java/aeu/ratha/beckie_deal_app/data/models/Brand.java - Review model
app/src/main/java/aeu/ratha/beckie_deal_app/data/models/Review.java - Retrofit networking
app/src/main/java/aeu/ratha/beckie_deal_app/network/RetrofitClient.java - Token storage
app/src/main/java/aeu/ratha/beckie_deal_app/security/TokenManager.java
Other components
- Shopper
- REST backend
Connections 26
- Shopper → Home and navigation: opens app
README.md - Shopper → Categories and brands: browses catalog
README.md - Shopper → Search and filters: searches products
README.md - Shopper → Sign-in and verification: signs in
README.md - Home and navigation → Categories and brands: navigates to
- Categories and brands → Product catalog data: loads catalog
- Search and filters → Product catalog data: searches catalog
app/src/main/java/aeu/ratha/beckie_deal_app/ui/activities/product/SearchActivity.java - Product details → Product catalog data: loads details
app/src/main/java/aeu/ratha/beckie_deal_app/ui/activities/product/ProductDetailActivity.java - Product catalog data → Product model: returns products
app/src/main/java/aeu/ratha/beckie_deal_app/data/repository/ProductRepository.java - Cart management → Cart repository: manages cart
- Cart repository → Cart model: returns cart
- Cart management → Checkout: starts checkout
- Checkout → Payment: selects payment
- Checkout → Order tracking: places order
- Sign-in and verification → Authentication API: authenticates
- Authentication API → REST backend: calls REST
app/src/main/java/aeu/ratha/beckie_deal_app/data/api/AuthApiService.java - Profile and preferences → Wishlist: opens wishlist
- Product details → Product reviews: shows reviews
- Product reviews → Review API: requests reviews
app/src/main/java/aeu/ratha/beckie_deal_app/data/repository/ReviewRepository.java - Review API → REST backend: calls REST
app/src/main/java/aeu/ratha/beckie_deal_app/data/api/ReviewApiService.java - Product reviews → Review model: caches reviews
app/src/main/java/aeu/ratha/beckie_deal_app/data/repository/ReviewRepository.java - Categories and brands → Brand model: displays brands
- Product catalog data → Retrofit networking: uses client
app/src/main/java/aeu/ratha/beckie_deal_app/data/repository/ProductRepository.java - Retrofit networking → REST backend: sends requests
app/src/main/java/aeu/ratha/beckie_deal_app/network/RetrofitClient.java - Retrofit networking → Token storage: adds credentials
app/src/main/java/aeu/ratha/beckie_deal_app/network/RetrofitClient.java - Shopper → Coupons and promotions: uses deals
README.md