Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[REFACTOR/#302] 빌드로직 구현 및 구조 수정 #303

Merged
merged 87 commits into from
Dec 5, 2024
Merged
Show file tree
Hide file tree
Changes from 85 commits
Commits
Show all changes
87 commits
Select commit Hold shift + click to select a range
c09c9d2
[FEAT/#302] 전체 모듈 추가
leeeyubin Nov 29, 2024
3f9ba51
[FEAT/#302] build logic 모듈 구현
leeeyubin Nov 29, 2024
a0e3355
[FEAT/#302] build logic 그래들 구현
leeeyubin Nov 29, 2024
94dd81a
[FEAT/#302] data, core, app 모듈 정리
leeeyubin Nov 29, 2024
16dcf7b
[FEAT/#302] domain 모듈 정리
leeeyubin Nov 29, 2024
9b7a02d
[FEAT/#302] feature 모듈 정리
leeeyubin Nov 29, 2024
93a0862
[FEAT/#302] 첫 빌드 성공
leeeyubin Nov 30, 2024
483919c
[FEAT/#302] kotlin 1.9.0으로 composeOptions.kotlinCompilerExtensionVers…
leeeyubin Nov 30, 2024
4ad45ae
[FEAT/#302] core.common 모듈 정리
leeeyubin Nov 30, 2024
420928e
[FEAT/#302] core:analytics 모듈 정리
leeeyubin Nov 30, 2024
b27f2ae
[FEAT/#302] core:designsystem 모듈 정리
leeeyubin Nov 30, 2024
2a558cb
[FEAT/#302] core:common 모듈 삭제
leeeyubin Nov 30, 2024
13737c6
[FEAT/#302] core:local 모듈 정리
leeeyubin Nov 30, 2024
7726c62
[FEAT/#302] core:navigation 모듈 정리
leeeyubin Nov 30, 2024
d257cdb
[FEAT/#302] core:network 모듈 정리
leeeyubin Nov 30, 2024
116049c
[FEAT/#302] data:auth 모듈 정리
leeeyubin Nov 30, 2024
63b396d
[FEAT/#302] data:calendar 모듈 정리
leeeyubin Nov 30, 2024
bee4730
[FEAT/#302] data:filtering 모듈 정리
leeeyubin Nov 30, 2024
37a3b40
[FEAT/#302] data:home 모듈 정리
leeeyubin Nov 30, 2024
a420521
[FEAT/#302] data:intern 모듈 정리
leeeyubin Nov 30, 2024
d07d075
[FEAT/#302] data:mypage 모듈 정리
leeeyubin Nov 30, 2024
de63a31
[FEAT/#302] data:onboarding 모듈 삭제
leeeyubin Nov 30, 2024
526fa96
[FEAT/#302] data:scrap 모듈 정리
leeeyubin Nov 30, 2024
6e51d97
[FEAT/#302] data:search 모듈 정리
leeeyubin Nov 30, 2024
53c6184
[FEAT/#302] data:token 모듈 정리
leeeyubin Nov 30, 2024
71661a7
[FEAT/#302] data:tokenreissue 모듈 정리
leeeyubin Nov 30, 2024
1bc7be3
[FEAT/#302] data 모듈 정리
leeeyubin Nov 30, 2024
1fd179a
[FEAT/#302] domain:auth 모듈 정리
leeeyubin Nov 30, 2024
b28731e
[FEAT/#302] domain:calendar 모듈 정리
leeeyubin Nov 30, 2024
a26f609
[FEAT/#302] domain:filtering 모듈 정리
leeeyubin Nov 30, 2024
74bfb2d
[FEAT/#302] domain:intern 모듈 정리
leeeyubin Nov 30, 2024
59f1a90
[FEAT/#302] domain:mypage 모듈 정리
leeeyubin Nov 30, 2024
56406c3
[FEAT/#302] domain:scrap 모듈 정리
leeeyubin Nov 30, 2024
6b8cfea
[FEAT/#302] domain:search 모듈 정리
leeeyubin Nov 30, 2024
ba4fb2b
[FEAT/#302] domain:token 모듈 정리
leeeyubin Nov 30, 2024
47fe66d
[FEAT/#302] domain:tokenreissue 모듈 정리
leeeyubin Nov 30, 2024
05110d3
[FEAT/#302] feature:main 모듈 정리
leeeyubin Nov 30, 2024
ff06dcb
[FEAT/#302] feature:calendar 모듈 정리
leeeyubin Nov 30, 2024
76ec9a3
[FEAT/#302] feature:dialog 모듈 정리
leeeyubin Nov 30, 2024
47cbb7b
[FEAT/#302] feature:filtering 모듈 정리
leeeyubin Nov 30, 2024
cf909f2
[FEAT/#302] feature:home 모듈 정리
leeeyubin Nov 30, 2024
fcf0831
[FEAT/#302] feature:intern 모듈 정리
leeeyubin Nov 30, 2024
2a3a649
[FEAT/#302] feature:mypage 모듈 정리
leeeyubin Nov 30, 2024
c6b2262
[FEAT/#302] feature:onboarding 모듈 정리
leeeyubin Nov 30, 2024
a95cec8
[FEAT/#302] feature:search 모듈 정리
leeeyubin Nov 30, 2024
e9561a8
[FEAT/#302] 코드 오류 수정
leeeyubin Nov 30, 2024
b941f52
[FEAT/#302] 자바 버전 수정
leeeyubin Nov 30, 2024
06b4066
[FEAT/#302] 빌드로직 구현 성공
leeeyubin Nov 30, 2024
923584b
[FEAT/#302] 의존성 수정
leeeyubin Nov 30, 2024
a5ab597
[FEAT/#302] 리빌드 오류 수정
leeeyubin Nov 30, 2024
7f304ff
[FEAT/#302] 테스트 라이브러리 제거
leeeyubin Dec 2, 2024
b01c422
[FEAT/#302] json 파일 수정
leeeyubin Dec 2, 2024
aa5e93c
[FEAT/#302] 프로가드, 컨슈머 삭제
leeeyubin Dec 2, 2024
ea34e55
[FEAT/#302] 로그아웃, 탈퇴 로직 오류 수정
leeeyubin Dec 2, 2024
e389546
[FEAT/#302] 라이브러리 정리
leeeyubin Dec 2, 2024
e38441a
[FEAT/#302] 라이브러리 정리
leeeyubin Dec 2, 2024
43143e2
[FEAT/#302] 코드 정리
leeeyubin Dec 2, 2024
26b3dee
[FEAT/#302] main 모듈 res 파일 정리
leeeyubin Dec 2, 2024
2a90204
[FEAT/#302] filtering 모듈 res 파일 정리
leeeyubin Dec 2, 2024
f941dbc
[FEAT/#302] mypage 모듈 res 파일 정리
leeeyubin Dec 2, 2024
196c8cf
[FEAT/#302] onboarding 모듈 res 파일 정리
leeeyubin Dec 2, 2024
1d872c4
[FEAT/#302] calendar 모듈 res 파일 정리
leeeyubin Dec 2, 2024
1b7053e
[FEAT/#302] dialog 모듈 res 파일 정리
leeeyubin Dec 2, 2024
f2ddb94
[FEAT/#302] home 모듈 res 파일 정리
leeeyubin Dec 2, 2024
2816834
[FEAT/#302] intern 모듈 res 파일 정리
leeeyubin Dec 2, 2024
750d6b8
[FEAT/#302] search 모듈 res 파일 정리
leeeyubin Dec 2, 2024
49dc247
[FEAT/#302] 코드 정리
leeeyubin Dec 2, 2024
3af53e3
[FEAT/#302] Update README.md
leeeyubin Dec 2, 2024
08aa0e1
[FEAT/#302] Update README.md
leeeyubin Dec 2, 2024
6718558
[FEAT/#302] 라이브러리 정리
leeeyubin Dec 2, 2024
9a44dd8
[FEAT/#302] 라이브러리 정리
leeeyubin Dec 2, 2024
8cb226d
[FEAT/#302] Update dokka.yml
leeeyubin Dec 2, 2024
011a588
[FEAT/#302] 코드 정리
leeeyubin Dec 2, 2024
0bc8e90
[FEAT/#302] 코드 정리
leeeyubin Dec 2, 2024
c8cd25b
[FEAT/#302] Update dependency graph
leeeyubin Dec 2, 2024
5f641c9
[FEAT/#302] Update package name
leeeyubin Dec 3, 2024
6d61b27
[FEAT/#302] Update README.md
leeeyubin Dec 3, 2024
dcd0abb
[FEAT/#302] Update README.md
leeeyubin Dec 3, 2024
39a2404
[FEAT/#302] Update README.md
leeeyubin Dec 3, 2024
f44e912
[FEAT/#302] 빌드로직 패키지 수정
leeeyubin Dec 4, 2024
e67c8d7
[FEAT/#302] Update README.md
leeeyubin Dec 4, 2024
ce033e4
[FEAT/#302] 중첩 Handler 수정
leeeyubin Dec 4, 2024
c9da16d
[FEAT/#302] 코드 수정
leeeyubin Dec 4, 2024
314746f
[FEAT/#302] docs.md 루트 수정
leeeyubin Dec 4, 2024
6ea15cd
[FEAT/#302] 불필요한 코드 삭제
leeeyubin Dec 4, 2024
ecf1036
[FEAT/#302] app 그래들 정리
leeeyubin Dec 4, 2024
4d382d8
[FEAT/#302] 불필요한 코드 삭제
leeeyubin Dec 5, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 1 addition & 1 deletion .github/workflows/dokka.yml
Original file line number Diff line number Diff line change
Expand Up @@ -55,4 +55,4 @@ jobs:
uses: JamesIves/[email protected]
with:
BRANCH: gh-pages
FOLDER: core/build/dokka/html
FOLDER: core/designsystem/build/dokka/html
75 changes: 44 additions & 31 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,60 +33,73 @@
<br>

## DEPENDENCY GRAPH
<img width="300px" src="https://github.com/user-attachments/assets/9f730e35-2ecf-4d1f-a170-e08a4836fe8a"/>

<img src="https://github.com/user-attachments/assets/0d88e4fe-b170-4aae-83e6-c9017b2bc893"/>

## MODULE & PACKAGE CONVENTION

```

🗃️app
┗ 📂di

🗃️build-logic
┣ 📂️convention
┗ 📂extension

🗃️core
📂analytics
📂designsystem
🗃️analytics
🗃️designsystem
┃ ┣ 📂component
┃ ┣ 📂extension
┃ ┣ 📂state
┃ ┣ 📂theme
┣ 📂extension
┣ 📂navigation
📂state
📂type
📂util
┣ 📂type
┣ 📂util
🗃️local
🗃️navigation
🗃️network

🗃️data
┣ 📂datasource
┣ 📂datasourceImpl
┣ 📂dto
┃ ┣ 📂response
┃ ┣ 📂request
┣ 📂local
┣ 📂mapper
┣ 📂repositoryImpl
┗ 📂service
┣ 🗃️auth
┣ 🗃️calendar
┣ 🗃️filtering
┣ 🗃️home
┣ 🗃️intern
┣ 🗃️mypage
┣ 🗃️scrap
┣ 🗃️search
┣ 🗃️token
┗ 🗃️tokenreissue

🗃️domain
┣ 📂entity
┗ 📂repository
┣ 🗃️auth
┣ 🗃️calendar
┣ 🗃️filtering
┣ 🗃️home
┣ 🗃️intern
┣ 🗃️mypage
┣ 🗃️scrap
┣ 🗃️search
┣ 🗃️token
┗ 🗃️tokenreissue

🗃️feature
📂기능패키징
🗃️기능모듈화

```

<br>

## TECH STACK
| Title | Content |
| ------------ | -------------------------- |
| Title | Content |
| ------------ |---------------------------------------|
| Architecture | Clean Architecture, MVI, Multi-Module |
| UI Framework | Jetpack Compose |
| Build Tools | Gradle Version Catalog |
| Dependency Injection | Hilt |
| Network | Retrofit2, OkHttp |
| Asynchronous Processing | Coroutine, Flow |
| Third Party Library | Coil, Timber, Kakao SDK, Lottie |
| Other Tools | Discode, Notion, Figma |\
| UI Framework | Jetpack Compose |
| Build Tools | Custom Build Logic, Gradle Version Catalog |
| Dependency Injection | Hilt |
| Network | Retrofit2, OkHttp |
| Asynchronous Processing | Coroutine, Flow |
| Third Party Library | Coil, Timber, Kakao SDK, Lottie |
| Other Tools | Discode, Notion, Figma |\
</br>

## SCREENSHOTS
Expand Down
85 changes: 17 additions & 68 deletions app/build.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,11 +1,8 @@
import java.util.Properties
import com.terning.build_logic.extension.setNamespace

plugins {
alias(libs.plugins.android.application)
alias(libs.plugins.kotlin.android)
alias(libs.plugins.hilt)
alias(libs.plugins.kotlin.parcelize)
alias(libs.plugins.ksp)
alias(libs.plugins.terning.application)
}

val properties = Properties().apply {
Expand All @@ -22,7 +19,7 @@ android {
}
}

namespace = "com.terning.point"
setNamespace("point")
compileSdk = libs.versions.compileSdk.get().toInt()

defaultConfig {
Expand All @@ -47,19 +44,7 @@ android {
}

buildTypes {
debug {
buildConfigField(
"String",
"BASE_URL",
properties.getProperty("test.base.url")
)
}
release {
buildConfigField(
"String",
"BASE_URL",
properties.getProperty("base.url")
)
isMinifyEnabled = false
proguardFiles(
getDefaultProguardFile("proguard-android-optimize.txt"),
Expand All @@ -68,10 +53,6 @@ android {
signingConfig = signingConfigs.getByName("release")
}
}
compileOptions {
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
}
kotlinOptions {
jvmTarget = libs.versions.jvmTarget.get()
}
Expand All @@ -82,57 +63,25 @@ android {
composeOptions {
kotlinCompilerExtensionVersion = libs.versions.kotlinCompilerExtensionVersion.get()
}
packaging {
resources {
excludes += "/META-INF/{AL2.0,LGPL2.1}"
excludes += "/META-INF/gradle/incremental.annotation.processors"
}
}
}

dependencies {
implementation(project(":core"))
implementation(project(":data"))
implementation(project(":domain"))
implementation(project(":feature"))
// feature
implementation(project(":feature:main"))

// KotlinDependencies
implementation(libs.kotlinx.serialization.json)
implementation(libs.coroutines.android)
implementation(libs.kotlin)
// data
implementation(project(":data:auth"))
implementation(project(":data:calendar"))
implementation(project(":data:filtering"))
implementation(project(":data:home"))
implementation(project(":data:intern"))
implementation(project(":data:mypage"))
implementation(project(":data:scrap"))
implementation(project(":data:token"))
implementation(project(":data:tokenreissue"))
implementation(project(":data:search"))

// AndroidXDependencies
implementation(libs.androidx.core.ktx)
implementation(libs.androidx.appcompat)
implementation(libs.hilt.android)
ksp(libs.hilt.android.compiler)
ksp(libs.hilt.manager)
implementation(libs.androidx.workManager)
implementation(libs.androidx.hiltWorkManager)
implementation(libs.hilt.compiler)
implementation(libs.androidx.hiltWorkManagerCompiler)

// TestDependencies
testImplementation(libs.junit)
androidTestImplementation(libs.androidx.junit)
androidTestImplementation(libs.androidx.espresso.core)
androidTestImplementation(platform(libs.androidx.compose.bom))
androidTestImplementation(libs.androidx.ui.test.junit4)

// ThirdPartyDependencies
implementation(platform(libs.okhttp.bom))
implementation(libs.okhttp)
implementation(libs.okhttp.logging)
implementation(libs.retrofit.core)
implementation(libs.retrofit.kotlin.serialization)
implementation(libs.retrofit2.kotlinx.serialization.converter)
implementation(libs.timber)
implementation(libs.ossLicense)
implementation(libs.process.phoenix)

// Compose Preview
implementation(libs.compose.ui.tooling)

// KakaoDependencies
implementation(libs.timber)
implementation(libs.kakao.user)
}
68 changes: 0 additions & 68 deletions app/src/main/java/com/terning/point/di/DataSourceModule.kt

This file was deleted.

72 changes: 0 additions & 72 deletions app/src/main/java/com/terning/point/di/RepositoryModule.kt

This file was deleted.

Loading
Loading