Altaf Pet Shop App

Technologies:
Kotlin Jetpack Compose Material Design 3 Hilt MVVM & Clean Architecture Retrofit OkHttp Kotlinx Serialization Room DataStore Jetpack Navigation Compose Coi Coroutines & Flow
Project Overview

Local Shop - Android E-Commerce Application


A modern, feature-rich Android e-commerce application built with Kotlin and Jetpack Compose, following clean architecture principles and MVVM pattern.


Features


User Authentication

- User registration with email, phone, and password

- Secure login with JWT token-based authentication

- Password reset functionality (forgot/reset password)

- Session management with persistent login state

- Secure token storage using DataStore


Product Catalog

- Browse products with categories

- Advanced product filtering (price range, category, search)

- Multiple sorting options (price, name, newest)

- Featured and latest products sections

- Detailed product view with related products

- High-quality image loading with Coil


Shopping Cart

- Add products to cart with quantity management

- Real-time cart updates

- Remove items from cart

- Clear cart functionality

- Cart persistence


Wishlist

- Add/remove products to wishlist

- Wishlist management

- Quick access to favorite items


Order Management

- Create orders with multiple items

- View order history

- Detailed order tracking

- Order cancellation

- Delivery confirmation

- Checkout process with multiple addresses


Address Management

- Add multiple delivery addresses

- Edit and delete addresses

- Set default address

- Address selection during checkout


User Profile

- View and edit user profile

- Update user information

- Change password

- Profile management


Search

- Real-time product search

- Search history

- Filtered search results


Settings

- Dark/Light theme toggle

- App preferences

- Settings management


Architecture


The app follows **Clean Architecture** principles with clear separation of concerns:


├── core/                 # Core utilities and shared components

│   ├── auth/            # Authentication & session management

│   ├── common/          # Common utilities & constants

│   ├── database/        # Room database setup

│   ├── datastore/       # DataStore for preferences

│   ├── designsystem/    # UI components, themes, colors

│   ├── di/              # Dependency Injection (Hilt)

│   ├── error/           # Error handling

│   ├── location/        # Location services

│   ├── navigation/      # Navigation graph

│   ├── network/         # Network layer, interceptors

│   ├── preferences/     # Theme & app preferences

│   ├── result/          # Result wrapper for API responses

│   └── util/            # Utility functions

│

└── feature/             # Feature modules

    ├── address/         # Address management

    ├── auth/            # Authentication screens

    ├── cart/            # Shopping cart

    ├── category/        # Category browsing

    ├── checkout/        # Checkout process

    ├── home/            # Home screen with banners

    ├── orders/          # Order management

    ├── product/         # Product listing & details

    ├── profile/         # User profile

    ├── search/          # Product search

    ├── settings/        # App settings

    └── wishlist/        # Wishlist management


App Screens


1. **Splash Screen** - App initialization

2. **Login/Register** - User authentication

3. **Home** - Featured products, banners, latest products

4. **Products** - Product listing with filters

5. **Product Details** - Detailed product view

6. **Categories** - Category browsing

7. **Search** - Product search

8. **Cart** - Shopping cart management

9. **Wishlist** - Saved products

10. **Checkout** - Order placement

11. **Address Management** - Delivery addresses

12. **Order History** - Past orders

13. **Order Details** - Detailed order information

14. **Profile** - User profile

15. **Settings** - App preferences


Future Enhancements


- Payment gateway integration

- Push notifications for order updates

- Product reviews and ratings

- Order tracking with map view

- Social login (Google, Facebook)

- Multi-language support

- Product comparison feature

- Discount coupons and offers

- Advanced analytics integration