/pocketshop

An Android E-commerce store Application built with Kotlin Clean Architecture.

Primary LanguageKotlin

PocketShop

An E-commerce application store front for users to have a unique shopping experience

Features Include

  • Product Catalogue
  • Powered Search Feature
  • Filter options
  • Account Creation
  • Profile Customization
  • Payment Gateway Methods
  • Shipment Tracking

Download

Go to the Releases to download the latest APK

Tech stack & Open-source libraries

  • Minimum SDK level 21
  • Kotlin based, Coroutines + Flow for asynchronous.
  • Jetpack
    • Lifecycle: Observe Android lifecycles and handle UI states upon the lifecycle changes.
    • ViewModel: Manages UI-related data holder and lifecycle aware. Allows data to survive configuration changes such as screen rotations.
    • DataBinding: Binds UI components in your layouts to data sources in your app using a declarative format rather than programmatically.
    • Room: Constructs Database by providing an abstraction layer over SQLite to allow fluent database access.
    • Hilt: for dependency injection.
  • Architecture
    • MVVM Architecture (View - DataBinding - ViewModel - Model)
    • Bindables: Android DataBinding kit for notifying data changes to UI layers.
    • Repository Pattern
  • Retrofit2 & OkHttp3: Construct the REST APIs and paging network data.
  • Moshi: A modern JSON library for Kotlin and Java.
  • Bundler: Android Intent & Bundle extensions, which insert and retrieve values elegantly.
  • ksp: Kotlin Symbol Processing API.
  • Turbine: A small testing library for kotlinx.coroutines Flow.
  • Material-Components: Material design components for building ripple animation, and CardView.
  • Glide, GlidePalette: Loading images from network.
  • Timber: A logger with a small, extensible API.

Screenshot

MAD Score

summary kotlin

License

Designed and developed by 2023 OAJSTUDIOS (Ayomitide OAJ)

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.