🙌 Contributors
- 정세희, 한지희, 추지온, 김준영, 전영상
- 한지희, 김정호, 권대원, 윤태성, 전영상
- 한지희, 김정호, 최상록, 윤태성, 전영상
- Clean Architecture with MVI (without Redux)
- Hilt
- Coroutine
- Jetpack Compose
- Coil
- Firestore
app
├── ...
├── src
│ ├── main
│ │ ├── di // Define hilt modules
│ │ │
presentation
├── ...
├── src
│ ├─── model // presentation entities
│ │
│ ├── ui
│ │ ├── splash
│ │ ├── login // 로그인 화면
│ │ │ ├─── Login // Compose screen
│ │ │ ├─── LoginContract // Define login UiState, UiEvent, UiSideEffect
│ │ │ │
│ │ ├─── member
│ │ │ ├─── main // 로그인 후 qr main 화면
│ │ │ ├─── signup // 이름 설정 및 팀 선택화면
│ │ │ ├─── detail // 출결 확인 화면 및 도움말
│ │ │ ├─── setting // 멤버 설정 화면
│ │ │ ├─── todaysession // 오늘의 세션 화면
│ │ │
│ │ ├── admin (wip)
│ │ │ ├─── main // 관리자용 메인 화면
│ │ │ ├─── detail // 누적 점수 확인 및
│ │ │ └─── management // 출결 관리 화면
│ │ │
│ │ └─── AttendanceScreen, MainActivity //위 패키지의 부모 화면
│ │
│ │
├──────────────────────── common // 리소스, 폰트, 테마, 컴포넌트 정의
│ ├── base
│ ├── theme
domain (wip) ├── util
├── ... └── yds // YAPP design system components
├── src
│ ├── main
│ │ ├── entity
│ │ ├── repository
│ │ └── usecase
│ │
data (wip)
├── ...
├── src
│ ├── main
│ │ ├── api
│ │ ├── response
│ │ └── repositoryImpl
-
strings.xml
screen name_description_component name
형식으로 네이밍ex) 로그인 화면에 사용되는 텍스트 - "3초만에 끝나는 간편한 출석체크" :
login_attendance_introduce_text
-
패키지 내부는
Screen - Contract - ViewModel
형태로 구성ex) 로그인 패키지: Login(Compose Screen) - LoginContract(UiState, UiEvent, UiSideEffect) - LoginViewModel
-
branch naming -
feature/