Skip to content

j00hyun/mobile-mart-payment

Repository files navigation

mobile-mart-payment

This project targets No Brand, a retail store with a relatively small and simple product selection. Customers can complete purchases using their smartphones without waiting in checkout lines. Store managers can manage each branch through a web-based dashboard.

mobile-mart-payment

You can view the app and admin dashboard designs via the following links:

Key Features

A total of 40 APIs were implemented. While the full API documentation is shared only with team members, the core functionalities are summarized here:

Customer – Android App

  • Supports both local and social logins
  • Allows customers to scan product barcodes to add items to the cart
  • Enables checkout directly within the app

Branch Manager – Admin Web Dashboard

  • Manage users and products
  • Automatically requests inventory restocks from HQ when levels drop below threshold
  • Provides daily, weekly, and monthly sales analytics

ERD

ERD DB Columns

Server Architecture

We adopted a blue/green deployment strategy for seamless and zero-downtime scaling.

server architecture

CI/CD Pipeline

When code is pushed or a pull request is made to GitHub, Jenkins pulls the code, builds the project, sends a notification to our Slack channel, and deploys it to the server using automated deployment scripts. We used Docker Compose to manage multiple Docker containers.

ci-cd architecture

Development Environment

Frontend
  • React
  • Graphql
  • Apollo Client
  • Material-UI
Android
  • RecyclerView
  • Retrofit2
  • HttpLoggingInterceptor
  • WebViewClient
  • Google Vision
  • BarcodeGraphic
  • CameraSource
  • GraphicOverlay
  • SharedPreference
  • I'mport (payment API)
Backend
  • Spring Security
  • Spring Cloud
  • Oauth2 Client
  • jjwt
  • Graphql
  • nurigo
  • redis
  • MySQL(RDS)
  • Amazon S3
  • Swagger2 (API documentation managed separately in team Notion)
  • nginx
  • jenkins
  • docker

Team Members

Overall Roles

Design Frontend
limhyoyeon
Lim Hyo-yeon

cho-hyerim
Cho Hye-rim

chaeyeonp
Chae-yeon Park

Android Backend
ggj0418
Hyun-jun Lee

gamjacode
Hyung-joo Kim

alexjime
Min-su Ji

j00hyun
Joo-hyun Park

About

Self-Checkout System for Retail (Personal Project)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 5

Languages