๋ฌด๋ง์ ์ฌ์ง์ ๋น๊ตํ๋ฉฐ ์ ํ ๊ธฐ์ค์ ๋ฐ๊ฒฌํ๊ณ , ๊ฒฝํ์ ๋ง์กฑ๋๊น์ง ์์ ์์ง์ ๋์ด
์ทจํฅ์ ์ ๋ฆฝํ ์ ์๋๋ก ๋์์ฃผ๋ ์๋น์ค์
๋๋ค.
-
Photopicker๋ก๋ถํฐ 8~32์ฅ ์ฌ์ด์ ์ด๋ฏธ์ง๋ฅผ ์ ๋ก๋ํ์ฌ ๋ฌด๋๋งค์น ์์ฑ- 1:1 ๋น๊ต ๋ฐ ์ ํ ์ด์ (๊ฐ์น๊ด) ํ๊น
- ๋ ๊ฐ ์ฌ์ง ์ค ๋ ๋ง์์ ๋๋ ์ฌ์ง์ ์ ํํ๊ณ , ์ ํ ์ด์ (์: ๋์์ ์ ํฉ๋, ์ฌ๋ฏธ์ฑ, ํธ๋ ๋ ๋ฑ)๋ฅผ ์ ํํ์ฌ ์ฌ์ฉ์ ์ค์ค๋ก ํธ๋ถํธ ๊ธฐ์ค์ ์์ํ๋๋ก ์ ๋
- ๋ง์ถคํ ๊ฒฝํ ๋ฏธ์
์์ฑ ๋ฐ ์ ์
- ๋ฌด๋๋งค์น ๊ฒฐ๊ณผ์ ๋ฐ๋ผ ๊ฐ์ฅ ๋๊ฒ ์ธก์ ๋ ์ฐ์ ์์ ๊ธฐ์ค์ ๋ถ์ํ๊ณ , ์ค์ ๋ก ๊ฒ์ฆํด ๋ณผ ์ ์๋ ๋ง์ถคํ ๋ฏธ์ ์ ์๋์ผ๋ก ์ ์
-
- ์งํ ์ํ๋ณ ๋ฌด๋๋งค์น / ๋ฏธ์
ํธ๋ํน
- ์งํ ์ค์ธ ๋ฌด๋๋งค์น(์ด์ดํ๊ธฐ)์ ์๋ฃ๋ ๋ฌด๋๋งค์น ๋ชฉ๋ก์ ํ๋์ ์กฐํํ๊ณ ๊ดธ๋ฆฌ
- ๊ฒฝํ ์ํ ๋ฐ ๋ง์กฑ๋ ํ๊ฐ
- ์ ์๋ฐ์ ๋ฏธ์ ์ ์ง์ ์คํํ ํ, ํ์ (1.0 ~ 5.0์ ) ๊ธฐ๋ฐ์ ๋ง์กฑ๋๋ฅผ ๊ธฐ๋ก
- 2.5์ ์ดํ๋ฅผ ์ ํํ ๊ฒฝ์ฐ ๋ถ๋ง์กฑ์ฌ์ ์์ง
- ์งํ ์ํ๋ณ ๋ฌด๋๋งค์น / ๋ฏธ์
ํธ๋ํน
-
- ๋ฐ์ดํฐ ๋์ ๊ธฐ๋ฐ ์ทจํฅ ์๊ฐํ
- ๋ฌด๋๋งค์น ์ ํ ํจํด๊ณผ ๋ฏธ์ ๋ง์กฑ๋ ๋ฐ์ดํฐ(๋ฌด๋๋งค์น ํ์, ์๋ฃ ๋ฏธ์ ์ ๋ฑ)๋ฅผ ๊ฒฐํฉํ์ฌ ๋ถ์
- ๊ฐ์ฅ ์ค์ํ๊ฒ ์๊ฐํ๋ ์ฒ๋ ๋ถ์
- ์์ ์ด ์คํ์ผ์ ์ ํํ ๋ ๊ฐ์ฅ ์ค์ํ๊ฒ ์๊ฐํ๋ ์์(์: ์ ์ฒด ์ ํฉ๋, ๋์์ธ ์๊ฐ ๋ฑ)๋ฅผ ๋น์จ๊ณผ ํ ์คํธ ํํ์ ๋ฆฌํฌํธ๋ก ์ ๊ณต
- ์๋ํ ์ทจํฅ์ ํ๊ท ๋ง์กฑ๋ ๋ถ์
- ์ค์ ์๋ํ๋ ๋ฏธ์ ๋ค์ ํ๊ท ์ ์ ๋ฐ ์ธ๋ถ ๋ถํฌ๋ฅผ ํต๊ณ ๋ฐ์ดํฐ๋ก ์๊ฐํํ์ฌ ๋ช ํํ ์ทจํฅ ๊ธฐ์ค์ ํ์ธํ ์ ์๋๋ก ์ ๊ณต
- ๋ฐ์ดํฐ ๋์ ๊ธฐ๋ฐ ์ทจํฅ ์๊ฐํ
- ๐ ์๋น์ค ์๊ฐ : ์๋น์ค ์๊ฐ๊ธ ๋ฐ๋ก๊ฐ๊ธฐ
- ๐บ ์์ฐ ์์ : ์์ฐ ์์ ๋ณด๋ฌ๊ฐ๊ธฐ
| ๊ตฌ๋ถ | ๊ธฐ์ ์คํ |
|---|---|
Version |
Kotlin 2.3.21 / JVM 21 / SDK 28~36 / AGP 9.2.1 |
Architecture |
Clean Architecture, MVI, Multi-Module |
UI |
Jetpack Compose |
DI |
Hilt |
Network |
Retrofit2, OkHttp |
Async |
Coroutine, Flow |
Build Tools |
Gradle Version Catalog + Custom Convention Plugins |
Analytics |
Firebase Analytics |
Third Party |
Kakao Login API |
Libraries & Utils |
Timber / Coil / Lottie |
Communication |
Figma / Notion / Rildo / Discord / Google Sheets |
%%{
init: {
'theme': 'base',
'themeVariables': {
'primaryColor': '#2B2D42',
'primaryTextColor': '#FFFFFF',
'primaryBorderColor': '#8D99AE',
'lineColor': '#8D99AE',
'secondaryColor': '#00FF00',
'tertiaryColor': '#FFFFFF'
}
}
}%%
graph LR
subgraph :core
:core:navigation["navigation"]
:core:model["model"]
:core:designsystem["designsystem"]
:core:ui["ui"]
:core:common["common"]
:core:data["data"]
:core:analytics["analytics"]
:core:auth["auth"]
:core:datastore["datastore"]
:core:network["network"]
end
subgraph :feature
:feature:tournament["tournament"]
:feature:onboard["onboard"]
:feature:report["report"]
:feature:home["home"]
:feature:auth["auth"]
end
:core:navigation --> :core:model
:feature:tournament --> :core:designsystem
:feature:tournament --> :core:ui
:feature:tournament --> :core:navigation
:feature:tournament --> :core:common
:feature:tournament --> :core:data
:feature:tournament --> :core:analytics
:feature:onboard --> :core:designsystem
:feature:onboard --> :core:ui
:feature:onboard --> :core:navigation
:feature:onboard --> :core:common
:feature:onboard --> :core:data
:feature:onboard --> :core:analytics
:feature:report --> :core:designsystem
:feature:report --> :core:ui
:feature:report --> :core:navigation
:feature:report --> :core:common
:feature:report --> :core:analytics
:feature:report --> :core:data
:app --> :feature:home
:app --> :feature:tournament
:app --> :feature:report
:app --> :feature:auth
:app --> :feature:onboard
:app --> :core:auth
:app --> :core:common
:app --> :core:data
:app --> :core:datastore
:app --> :core:designsystem
:app --> :core:model
:app --> :core:navigation
:app --> :core:network
:app --> :core:ui
:app --> :core:analytics
:core:data --> :core:common
:core:data --> :core:model
:core:data --> :core:datastore
:core:data --> :core:network
:core:data --> :core:auth
:feature:home --> :core:designsystem
:feature:home --> :core:ui
:feature:home --> :core:navigation
:feature:home --> :core:common
:feature:home --> :core:data
:feature:home --> :core:analytics
:core:network --> :core:common
:core:network --> :core:model
:core:network --> :core:datastore
:feature:auth --> :core:designsystem
:feature:auth --> :core:ui
:feature:auth --> :core:navigation
:feature:auth --> :core:common
:feature:auth --> :core:data
:feature:auth --> :core:analytics
:core:ui --> :core:model
:core:ui --> :core:common
:core:ui --> :core:designsystem
:core:auth --> :core:model
:core:datastore --> :core:model
:core:datastore --> :core:common
๐๏ธapp
๐๏ธbuild-logic
๐๏ธcore
โฃ ๐๏ธanalytics
โฃ ๐๏ธauth
โฃ ๐๏ธcommon
โฃ ๐๏ธdata
โฃ ๐๏ธdatastore
โฃ ๐๏ธdesignsystem
โฃ ๐๏ธmodel
โฃ ๐๏ธnavigation
โฃ ๐๏ธnetwork
โ ๐๏ธui
๐๏ธfeature
โฃ ๐๏ธauth
โฃ ๐๏ธhome
โฃ ๐๏ธonboarding
โฃ ๐๏ธreport
โ ๐๏ธtournament