Thanks to visit codestin.com
Credit goes to github.com

Skip to content

OnlineShop is a comprehensive Android application designed to simulate a real-world e-commerce experience. Built with Kotlin and Jetpack Compose, this app integrates a robust RESTful API and includes a fully functional payment gateway, making it an excellent resource for developers

License

iliaxp/OnlineShop

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

5 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ›οΈ Online Shop Application

Android Kotlin Jetpack Compose Material Design

A modern, feature-rich Android e-commerce application built with cutting-edge technologies


✨ Features

🏠 Core Functionality

  • User Authentication - Secure login and registration system
  • Product Catalog - Browse products with categories, colors, and sizes
  • Shopping Cart - Add/remove items with real-time updates
  • Payment Processing - Secure payment gateway integration
  • Order Management - Track orders and view invoices
  • User Profile - Manage personal information and preferences

🎨 User Experience

  • Modern UI/UX - Built with Material Design 3 principles
  • Responsive Design - Optimized for all screen sizes
  • Smooth Navigation - Intuitive app flow with bottom navigation
  • Dark/Light Theme - Adaptive theming system
  • Edge-to-Edge Design - Immersive full-screen experience

πŸ”§ Technical Excellence

  • MVVM Architecture - Clean separation of concerns
  • Dependency Injection - Hilt for efficient dependency management
  • Local Database - Room database for offline data persistence
  • API Integration - Retrofit for seamless backend communication
  • Image Loading - Glide for efficient image management
  • Navigation - Jetpack Navigation Compose for smooth transitions

πŸš€ Technology Stack

Category Technology Version
Language Kotlin 2.2.0
UI Framework Jetpack Compose 2025.07.00
Architecture MVVM + Repository Pattern -
Dependency Injection Hilt (Dagger) 2.57
Database Room 2.7.2
Networking Retrofit + GSON 3.0.0
Image Loading Glide (Landscapist) 2.5.1
Navigation Navigation Compose 2.9.2
Minimum SDK Android 5.0 (API 21) -
Target SDK Android 14 (API 36) -

πŸ—οΈ Architecture

app/
β”œβ”€β”€ πŸ“ api/           # API interfaces and network layer
β”œβ”€β”€ πŸ“ config/        # Application configuration
β”œβ”€β”€ πŸ“ db/           # Room database and DAOs
β”œβ”€β”€ πŸ“ models/       # Data models and entities
β”œβ”€β”€ πŸ“ modules/      # Hilt modules for DI
β”œβ”€β”€ πŸ“ repositories/ # Data repositories
β”œβ”€β”€ πŸ“ ui/          # UI components and screens
β”‚   β”œβ”€β”€ components/  # Reusable UI components
β”‚   β”œβ”€β”€ screens/     # App screens
β”‚   └── theme/       # App theming
β”œβ”€β”€ πŸ“ utils/        # Utility classes
└── πŸ“ viewmodels/   # ViewModels for UI logic

πŸš€ Getting Started

Prerequisites

  • Android Studio Hedgehog (2023.1.1) or later
  • Android SDK 36 (Android 14)
  • Minimum SDK: API 21 (Android 5.0)
  • Java 17 or later

Installation

  1. Clone the repository

    git clone https://github.com/mahdizaredev/OnlineShopApplication.git
    cd OnlineShopApplication
  2. Open in Android Studio

    • Launch Android Studio
    • Open the project folder
    • Wait for Gradle sync to complete
  3. Build and Run

    • Connect an Android device or start an emulator
    • Click the "Run" button or press Shift + F10
    • Select your target device and wait for the app to install

Build Variants

  • Debug - Development build with debugging enabled
  • Release - Production build with ProGuard optimization

πŸ”§ Configuration

Environment Setup

The app is configured to work with the online shop backend at onlineshopholosen.ir. Make sure you have:

  • Internet connectivity
  • Valid API endpoints configured
  • Proper authentication credentials

Customization

  • Modify app/src/main/res/values/ for app branding
  • Update app/src/main/java/com/mahdizaredev/onlineshop/config/ for API configuration
  • Customize themes in app/src/main/java/com/mahdizaredev/onlineshop/ui/theme/

πŸ“Š Performance Features

  • Multi-ABI Support - Optimized for x86, x86_64, ARM, and ARM64
  • Universal APK - Single APK for all architectures
  • ProGuard Optimization - Code shrinking and obfuscation
  • Resource Optimization - Efficient resource management
  • Memory Management - Optimized image loading and caching

πŸ§ͺ Testing

The project includes comprehensive testing setup:

  • Unit Tests - JUnit 4 for business logic
  • UI Tests - Espresso for UI automation
  • Compose Tests - Compose testing framework
  • Instrumentation Tests - Android device testing

Run tests with:

# Unit tests
./gradlew test

# Instrumented tests
./gradlew connectedAndroidTest

🀝 Contributing

We welcome contributions! Please follow these steps:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

Contribution Guidelines

  • Follow Kotlin coding conventions
  • Use meaningful commit messages
  • Add tests for new functionality
  • Update documentation as needed
  • Follow Material Design principles

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.


πŸ‘¨β€πŸ’» Developer

Mahdi Zare - Lead Android Developer


⭐ Star this repository if you found it helpful!

Made with ❀️ by Mahdi Zare

About

OnlineShop is a comprehensive Android application designed to simulate a real-world e-commerce experience. Built with Kotlin and Jetpack Compose, this app integrates a robust RESTful API and includes a fully functional payment gateway, making it an excellent resource for developers

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages