봉투백서 - 경조사가 막막한 2030을 위한 똑똑한 가이드
봉투백서는 사회초년생을 위한 맞춤형 경조사비를 추천하고, 효율적으로 관리할 수 있도록 도와주는 앱 서비스입니다.
매번 헷갈리던 경조사 금액을 알려드립니다.
더 이상 포털사이트에서 ‘결혼식 축의금 얼마’를 검색하지 마세요!
| 김종명 (Lead) @jm991014 |
김혜정 @mjeong21 |
공승준 @seungjunGong |
|---|---|---|
![]() |
![]() |
![]() |
금액추천, 콘텐츠 |
온보딩, 홈, 탈퇴하기 |
기록하기, 상세내용 |
| 항목 | 기술 스택 |
|---|---|
| Architecture | Google Recommended Architecture |
| Pattern | MVVM |
| DI | Hilt |
| Asynchronous | Coroutine, Flow |
| Network | Retrofit2, OkHttp |
| Navigation | Single Activity Architecture (SAA), Jetpack Navigation |
| UI Framework | Jetpack Compose |
| Image Processing | Coil, Lottie |
| Logging | Timber |
📌 도입 기술 선정 이유
1️⃣ Architecture: Google Recommended Architecture
서비스의 규모나 복잡도를 고려했을 때 도메인 레이어까지 고정적으로 가져가기보다는
기본적인 아키텍처 구조는 따르되, 도메인 레이어는 필요한 경우에만 유연하게 추가할 수 있도록 구성했습니다.
초기에는 가볍게 시작하고, 기능이 확장될수록 자연스럽게 구조를 확장해갈 수 있다고 판단했습니다.
2️⃣ Pattern: MVVM (Model-View-ViewModel)
팀원 대부분이 익숙하게 사용해온 패턴이며, ViewModel을 중심으로 상태를 관리하기 때문에 Jetpack Compose와의 궁합이 좋아 선택하게 되었습니다.
UI와 로직을 명확히 분리할 수 있어서 협업 시 역할 구분이 쉬워지고, 테스트나 유지보수 측면에서도 유리합니다.
3️⃣ Dependency Injection: Hilt
구글에서 권장하는 DI 라이브러리로, 보일러플레이트 코드를 줄이면서 의존성 관리의 일관성과 재사용성을 확보할 수 있어 도입했습니다.
또한 내부적으로 제공하는 컴포넌트들의 라이프사이클을 자동으로 관리해주기 때문에, 초기 설정 부담을 줄이고 생산성과 유지보수 효율을 높일 수 있습니다.
- Github Convention
- Naming Convention
- Packaging Convention
🗃️ app
├─ 🗃️ core
│ ├─ 🗃️ common
│ │ ├─ 📁 navigation
│ │ ├─ 📁 state
│ │ └─ 📁 type
│ ├─ 🗃️ designsystem
│ │ ├─ 📁 component
│ │ └─ 📁 theme
│ ├─ 🗃️ local
│ │ ├─ 📁 datastore
│ │ └─ 📁 room (필요시)
│ ├─ 🗃️ network
│ └─ 🗃️ util
│
├─ 🗃️ data (feature 기반)
│ ├─ 📁 datastore
│ ├─ 📁 datastoreimpl
│ ├─ 📁 di
│ ├─ 📁 dto
│ ├─ 📁 mapper
│ ├─ 📁 model
│ ├─ 📁 repository
│ ├─ 📁 repositoryimpl
│ └─ 📁 service
│
├─ 🗃️ domain
│ └─ 📁 usecase (필요시)
│
└─ 🗃️ presentation (view 기반)
├─ 📁 main
├─ 📁 home
└─ ...















