Skip to content

i-vishi/shopping-android-app

Repository files navigation

Shopping Android App

An e-commerce android application written in Kotlin where users can sell and buy products.

Overview

The application contains list of products such as shoes, slippers on which user can click to view its details and then, add them to cart. User can like and dislike the product as well. Also, User can sell products, if he/she signed up as a Seller. Some other features are as following:

  • Login / Signup with OTP Verification.
  • Recyclerview with variable span size to show products.
  • Search Bar and filtering
  • Product detail screen with image carousel and custom Radio Buttons.
  • Add/Edit Product for Sellers
  • See all orders placed.
  • Increase/Decrease quantity of product in cart.
  • Place Order.
  • Modify status of order for Seller.
  • Add/Edit Address
  • Tested using Espresso. Written unit, instrumentation and UI tests.

Some Screenshots

Splash Screen Application Home Product Detail
Signup Login OTP Verification
Shopping Cart Address Selection Payment Method Order Success
Add Product All Orders Order Detail Sign Out

Project Setup

Clone and install

Clone this repository and import into Android Studio

git clone https://github.com/i-vishi/shopping-android-app.git

Configuration

  • The project requires Firebase. So follow the steps given here (Add Firebase to Android Project) to add firebase to your android project.
  • Download the firebase config file google-services.json
  • Move the config file to (app) module of the project.
  • Also, add Cloud Firestore for storing users, products, orders and addresses data. Follow instructions here (Add Cloud Firestore to your app) to add Cloud Firestore to your app.
  • There need to be two collections - users for Users data and products for Products Data.
  • This project also, requires OTP based authentication. So, you just need to enable Phone Number sign-in in your firebase project. Follow instructions here (Enable Phone Number sign-in) to enable Phone Number sign-in.
  • Do not forget to enable app verification for your firebase project. Follow instructions here (Enable app verification) to enable app verification. Add both SHA-1 and SHA-256 fingerprints.

Tried everything but still not able to explore the app due to OTP errors? Don't worry, you can by-pass the OTP screen and explore the app.

  • Go to app/src/main/java/com/vishalgaur/shoppingapp/Utils.kt file.
  • Change the return value for function shouldBypassOTPValidation() to true.
  • You are good to go now. Just run the app and explore.
  • And take your time to setup the OTP verification. 😉

Star History

Star History Chart

Built With

  • Kotlin
  • Firebase
  • Room
  • Material
  • Glide

Made with 💙 by Vishal Gaur