/android-groceries-store

A Groceries Store app with basic order flow. 🍕 Help you learn modern Android development skills in real production environment. ❤️

Primary LanguageKotlinMIT LicenseMIT

🚀 Groceries Store

Progress of migrating from Firebase to Supabase Wiki

Android CI

Groceries Store

Download on Google Play Store

About

Groceries Store is a project to help people order grocery online. The main purpose of this project is to demonstrate modern Android development skills in real production environment, reduce the learning curve when jump into Android development world.

UI Design & Architecture

Design

Architecture

Libraries

  • Glide - Loading images.
  • Timber - Logging.
  • Retrofit2 - Construct the REST APIs and paging network data.
  • Moshi - A modern JSON library for Kotlin and Java.
  • Hilt for dependency injection.
  • JetPack
    • Lifecycle - dispose of observing data when lifecycle state changes.
    • ViewModel - UI related data holder, lifecycle aware.
    • Room Persistence - construct a database using the abstract layer.

Setup

Android Studio

Android Studio Bumblebee or later SDK 23 or later

Supabase (In-progress)

See Supabase Wiki to keep track the process Database Schema:

categories

id image name _id

line_items

id lineItemId productid quantity subtotal orderId

orders

orderId status

products

_id name description price image category nutrition productid

users

id name email phone isOrderCreatedNotiEnabled isPromotionNotiEnabled isDataRefreshedEnabled address

Find this repository useful? ❤️

Support it by joining stargazers for this repository. ⭐
Also, follow me on GitHub for my next creations! 🤩

Contributors ✨

All Contributors

Thanks goes to these wonderful people (emoji key):

Saurabh Patel
Saurabh Patel

💻
Aditya Gupta
Aditya Gupta

🎨 💻 💡
Dmitriy
Dmitriy

💻
Devendra Varma
Devendra Varma

💻
Amartya
Amartya

🎨
NLC
NLC

🎨 💻
Fredrik Henricsson
Fredrik Henricsson

💻

This project follows the all-contributors specification. Contributions of any kind welcome!