A mobile-commerce prototype with a local product catalog, persistent cart, Firebase authentication, and Material navigation.
Shoe Store explores the core interaction model of a native Android shopping application: browse category-backed inventory, inspect product details, adjust quantities, keep a cart across sessions, and move between commerce surfaces through a custom bottom navigation experience.
| Area | Implementation |
|---|---|
| Product catalog | Room entities and DAOs for categories and items |
| Product discovery | RecyclerView cards, category filters, banners, and a detail bottom sheet |
| Cart | Quantity controls with Gson-backed SharedPreferences persistence |
| Session | Firebase Authentication and a local session manager |
| Navigation | Home, search, cart, favorites, and profile destinations |
| UI | XML layouts, View Binding, Data Binding, Glide, and Material components |
Activities and fragments
↓
Adapters + View/Data Binding
↓
Room catalog SharedPreferences cart
↘ ↙
Commerce UI
↗ ↖
Firebase Auth Local session state
- Android Studio with an Android SDK compatible with compile SDK 34
- A Firebase Android project with Authentication configured
-
Clone the repository:
git clone https://github.com/rahultripathi17/shoe-store-android.git
-
Register the Android package
com.project.stacklabin your Firebase project. -
Download your own
google-services.jsonand place it inapp/. -
Open the project in Android Studio, sync Gradle, and run the
appconfiguration.
Firebase configuration is deliberately excluded from version control.
Note
This repository is a portfolio prototype. Authentication and checkout-related flows require production hardening before real customer or payment use.
app/src/main/java/com/project/stacklab/
├── Activities/ # entry, authentication and host screens
├── Fragments/ # store destinations and product interactions
├── Adapters/ # RecyclerView and pager adapters
├── Database/ # Room database and DAOs
├── Helpers/ # persistent cart behavior
└── Models/ # catalog and cart entities
Built by Rahul Tripathi · Portfolio · LinkedIn