비교적 제품 수가 적고 간단한 '노브랜드'를 타겟으로 제작하였습니다. 마트에서 계산을 위해 줄을 서지 않아도 되며 소비자가 직접 결제까지 가능합니다. 지점 관리자는 웹 대시보드 형식으로 지점 관리가 가능합니다.
디자인과 안드로이드 Repository는 아래 링크에서 확인해주세요.
GIF 준비중입니다.
안드로이드 앱>
관리자 웹 대시보드>
총 40개의 API가 구현되었습니다. 정리된 API문서는 팀에게만 공개되어있으며 그 중 핵심 기능만 README에 나열합니다.
고객 - 안드로이드 App
- 로컬 및 소셜 로그인이 가능
- 상품 바코드 스캔을 통해 장바구니에 담을 수 있음
- 장바구니 결제 가능
지점 관리자 - 관리자 웹 대시보드
- 유저 및 상품 관리가 가능
- 지정한 최소 재고량에 따라 본사에 자동 재고 요청
- 일, 주, 월 단위로 매출 현황 확인 가능
무중단 scale-out이 가능한 blue/green 배포전략으로 구성했습니다.
Github에 소스코드를 PUSH 혹은 PR하면 Jenkins가 소스코드를 가져와서 빌드합니다. 빌드 결과를 프로젝트 팀 Slack으로 알리고 배포 스크립트를 통해 서버에 배포합니다. 여러 개의 도커 컨테이너를 관리하기 위해 docker compose를 사용했습니다.
프론트엔드
- React
- Graphql
- Apollo Client
- Material-UI
안드로이드
- RecyclerView
- Retrofit2
- HttpLoggingInterceptor
- WebViewClient
- Google Vision
- BarcodeGraphic
- CameraSource
- GraphicOverlay
- SharedPreference
- 아임포트
백엔드
- Spring Security
- Spring Cloud
- Oauth2 Client
- jjwt
- Graphql
- nurigo
- redis
- MySQL(RDS)
- Amazon S3
- Swagger2 (정리된 API문서본은 별도로 팀 노션으로 관리)
- nginx
- jenkins
- docker
전체
디자인 | 프론트엔드 | ||
임효연 |
조혜림 |
박채연 |
|
안드로이드 | 백엔드 | ||
이현준 |
김형주 |
지민수 |
박주현 |