diff --git a/app/build.gradle.kts b/app/build.gradle.kts index be1b26e..7cc1f25 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -76,7 +76,6 @@ dependencies { implementation(project(":core:designsystem")) implementation(project(":core:common")) implementation(project(":feature:projects")) - implementation(project(":feature:mypage")) KotlinDependencies.run { implementation(kotlin) @@ -120,4 +119,4 @@ dependencies { implementation(composeMaterial3) implementation(composeTooling) } -} \ No newline at end of file +} diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 942e757..14de5f0 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -9,9 +9,9 @@ android:allowBackup="true" android:dataExtractionRules="@xml/data_extraction_rules" android:fullBackupContent="@xml/backup_rules" - android:icon="@mipmap/ic_launcher" + android:icon="@drawable/logo_olive_rotational" android:label="@string/app_name" - android:roundIcon="@mipmap/ic_launcher_round" + android:roundIcon="@drawable/logo_olive_rotational" android:supportsRtl="true" android:theme="@style/Theme.SSUPlectorAndroid" tools:targetApi="31"> diff --git a/app/src/main/java/com/zucchini/ssuplector/InitActivity.kt b/app/src/main/java/com/zucchini/ssuplector/InitActivity.kt index 50eb60c..1b466d0 100644 --- a/app/src/main/java/com/zucchini/ssuplector/InitActivity.kt +++ b/app/src/main/java/com/zucchini/ssuplector/InitActivity.kt @@ -3,6 +3,7 @@ package com.zucchini.ssuplector import android.content.Intent import android.os.Bundle import androidx.appcompat.app.AppCompatActivity +import com.zucchini.projects.IntroduceActivity import com.zucchini.projects.MainActivity import com.zucchini.ssuplector.databinding.ActivityInitBinding import dagger.hilt.android.AndroidEntryPoint @@ -15,7 +16,7 @@ class InitActivity : AppCompatActivity() { binding = ActivityInitBinding.inflate(layoutInflater) super.onCreate(savedInstanceState) setContentView(binding.root) - startActivity(Intent(this, MainActivity::class.java)) + startActivity(Intent(this, IntroduceActivity::class.java)) finish() } } diff --git a/app/src/main/res/drawable/logo_leaf_dark.png b/app/src/main/res/drawable/logo_leaf_dark.png new file mode 100644 index 0000000..01eccaf Binary files /dev/null and b/app/src/main/res/drawable/logo_leaf_dark.png differ diff --git a/app/src/main/res/drawable/logo_leaf_light.png b/app/src/main/res/drawable/logo_leaf_light.png new file mode 100644 index 0000000..0c83ffd Binary files /dev/null and b/app/src/main/res/drawable/logo_leaf_light.png differ diff --git a/app/src/main/res/drawable/logo_olive_rotational.png b/app/src/main/res/drawable/logo_olive_rotational.png new file mode 100644 index 0000000..0640157 Binary files /dev/null and b/app/src/main/res/drawable/logo_olive_rotational.png differ diff --git a/app/src/main/res/drawable/logo_olive_vertical.png b/app/src/main/res/drawable/logo_olive_vertical.png new file mode 100644 index 0000000..265fa73 Binary files /dev/null and b/app/src/main/res/drawable/logo_olive_vertical.png differ diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 35b28ae..1e0926e 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -1,3 +1,3 @@ - SSUPlector + 슈플렉터 \ No newline at end of file diff --git a/buildSrc/src/main/java/com/zucchini/buildsrc/Dependencies.kt b/buildSrc/src/main/java/com/zucchini/buildsrc/Dependencies.kt index 2b712c9..6b51244 100644 --- a/buildSrc/src/main/java/com/zucchini/buildsrc/Dependencies.kt +++ b/buildSrc/src/main/java/com/zucchini/buildsrc/Dependencies.kt @@ -87,6 +87,7 @@ object ThirdPartyDependencies { const val flexbox = "com.google.android.flexbox:flexbox:${Versions.flexboxVersion}" const val circleImageView = "de.hdodenhof:circleimageview:${Versions.circleImageViewVersion}" + const val dotIndicator = "com.tbuonomo:dotsindicator:${Versions.dotIndicatorVersion}" } object ClassPathPlugins { diff --git a/buildSrc/src/main/java/com/zucchini/buildsrc/Versions.kt b/buildSrc/src/main/java/com/zucchini/buildsrc/Versions.kt index 1eb7978..0067d52 100644 --- a/buildSrc/src/main/java/com/zucchini/buildsrc/Versions.kt +++ b/buildSrc/src/main/java/com/zucchini/buildsrc/Versions.kt @@ -43,6 +43,7 @@ object Versions { const val androidTestVersion = "1.1.2" const val flexboxVersion = "3.0.0" const val circleImageViewVersion = "3.1.0" + const val dotIndicatorVersion = "5.0" val javaVersion = JavaVersion.VERSION_17 const val jvmVersion = "17" diff --git a/feature/devInfo/.gitignore b/feature/devInfo/.gitignore deleted file mode 100644 index 42afabf..0000000 --- a/feature/devInfo/.gitignore +++ /dev/null @@ -1 +0,0 @@ -/build \ No newline at end of file diff --git a/feature/devInfo/build.gradle.kts b/feature/devInfo/build.gradle.kts deleted file mode 100644 index 1f1aea4..0000000 --- a/feature/devInfo/build.gradle.kts +++ /dev/null @@ -1,94 +0,0 @@ -import com.zucchini.buildsrc.Constants - -plugins { - id("com.android.library") - kotlin("android") - kotlin("kapt") - id("kotlin-parcelize") - id("dagger.hilt.android.plugin") -} - -android { - namespace = "com.zucchini.feature.devInfo" - compileSdk = Constants.compileSdk - - defaultConfig { - minSdk = Constants.minSdk - - testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" - consumerProguardFiles("consumer-rules.pro") - } - - compileOptions { - sourceCompatibility = Versions.javaVersion - targetCompatibility = Versions.javaVersion - } - - kotlinOptions { - jvmTarget = Versions.jvmVersion - } - - buildFeatures { - buildConfig = true - dataBinding = true - viewBinding = true - compose = true - } -} - -dependencies { - implementation(project(":domain")) - implementation(project(":core:designsystem")) - implementation(project(":core:common")) - - - KotlinDependencies.run { - implementation(kotlin) - implementation(coroutines) - implementation(jsonSerialization) - implementation(dateTime) - } - - AndroidXDependencies.run { - implementation(coreKtx) - implementation(appCompat) - implementation(constraintLayout) - implementation(fragment) - implementation(startup) - implementation(legacy) - implementation(security) - implementation(hilt) - implementation(lifeCycleKtx) - implementation(lifecycleJava8) - implementation(splashScreen) - implementation(pagingRuntime) - implementation(workManager) - implementation(hiltWorkManager) - } - - KaptDependencies.run { - kapt(hiltCompiler) - kapt(hiltWorkManagerCompiler) - } - - implementation(MaterialDesignDependencies.materialDesign) - - TestDependencies.run { - testImplementation(jUnit) - androidTestImplementation(androidTest) - androidTestImplementation(espresso) - } - - ThirdPartyDependencies.run { - implementation(coil) - implementation(timber) - implementation(ossLicense) - } - - ComposeDependencies.run { - implementation(composeUi) - implementation(composeActivity) - implementation(composeMaterial3) - implementation(composeTooling) - } -} diff --git a/feature/devInfo/consumer-rules.pro b/feature/devInfo/consumer-rules.pro deleted file mode 100644 index e69de29..0000000 diff --git a/feature/devInfo/proguard-rules.pro b/feature/devInfo/proguard-rules.pro deleted file mode 100644 index 481bb43..0000000 --- a/feature/devInfo/proguard-rules.pro +++ /dev/null @@ -1,21 +0,0 @@ -# Add project specific ProGuard rules here. -# You can control the set of applied configuration files using the -# proguardFiles setting in build.gradle. -# -# For more details, see -# http://developer.android.com/guide/developing/tools/proguard.html - -# If your project uses WebView with JS, uncomment the following -# and specify the fully qualified class name to the JavaScript interface -# class: -#-keepclassmembers class fqcn.of.javascript.interface.for.webview { -# public *; -#} - -# Uncomment this to preserve the line number information for -# debugging stack traces. -#-keepattributes SourceFile,LineNumberTable - -# If you keep the line number information, uncomment this to -# hide the original source file name. -#-renamesourcefileattribute SourceFile \ No newline at end of file diff --git a/feature/devInfo/src/androidTest/java/com/zucchini/devinfo/ExampleInstrumentedTest.kt b/feature/devInfo/src/androidTest/java/com/zucchini/devinfo/ExampleInstrumentedTest.kt deleted file mode 100644 index 0b9a055..0000000 --- a/feature/devInfo/src/androidTest/java/com/zucchini/devinfo/ExampleInstrumentedTest.kt +++ /dev/null @@ -1,24 +0,0 @@ -package com.zucchini.devinfo - -import androidx.test.platform.app.InstrumentationRegistry -import androidx.test.ext.junit.runners.AndroidJUnit4 - -import org.junit.Test -import org.junit.runner.RunWith - -import org.junit.Assert.* - -/** - * Instrumented test, which will execute on an Android device. - * - * See [testing documentation](http://d.android.com/tools/testing). - */ -@RunWith(AndroidJUnit4::class) -class ExampleInstrumentedTest { - @Test - fun useAppContext() { - // Context of the app under test. - val appContext = InstrumentationRegistry.getInstrumentation().targetContext - assertEquals("com.zucchini.devinfo.test", appContext.packageName) - } -} \ No newline at end of file diff --git a/feature/devInfo/src/main/AndroidManifest.xml b/feature/devInfo/src/main/AndroidManifest.xml deleted file mode 100644 index cb37936..0000000 --- a/feature/devInfo/src/main/AndroidManifest.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/feature/devInfo/src/main/res/values/strings.xml b/feature/devInfo/src/main/res/values/strings.xml deleted file mode 100644 index 23d84fc..0000000 --- a/feature/devInfo/src/main/res/values/strings.xml +++ /dev/null @@ -1,8 +0,0 @@ - - 개발자 찾기 - 개발자 상세 페이지 - Github - 카카오톡 아이디 - 이메일 - 프로젝트 보러가기↗ - \ No newline at end of file diff --git a/feature/devInfo/src/test/java/com/zucchini/devinfo/ExampleUnitTest.kt b/feature/devInfo/src/test/java/com/zucchini/devinfo/ExampleUnitTest.kt deleted file mode 100644 index c7c8c32..0000000 --- a/feature/devInfo/src/test/java/com/zucchini/devinfo/ExampleUnitTest.kt +++ /dev/null @@ -1,17 +0,0 @@ -package com.zucchini.devinfo - -import org.junit.Test - -import org.junit.Assert.* - -/** - * Example local unit test, which will execute on the development machine (host). - * - * See [testing documentation](http://d.android.com/tools/testing). - */ -class ExampleUnitTest { - @Test - fun addition_isCorrect() { - assertEquals(4, 2 + 2) - } -} \ No newline at end of file diff --git a/feature/mypage/.gitignore b/feature/mypage/.gitignore deleted file mode 100644 index 42afabf..0000000 --- a/feature/mypage/.gitignore +++ /dev/null @@ -1 +0,0 @@ -/build \ No newline at end of file diff --git a/feature/mypage/build.gradle.kts b/feature/mypage/build.gradle.kts deleted file mode 100644 index abe3f47..0000000 --- a/feature/mypage/build.gradle.kts +++ /dev/null @@ -1,92 +0,0 @@ -import com.zucchini.buildsrc.Constants - -plugins { - id("com.android.library") - kotlin("android") - kotlin("kapt") - id("kotlin-parcelize") - id("dagger.hilt.android.plugin") -} - -android { - namespace = "com.zucchini.feature.mypage" - compileSdk = Constants.compileSdk - - defaultConfig { - minSdk = Constants.minSdk - - testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" - consumerProguardFiles("consumer-rules.pro") - } - - compileOptions { - sourceCompatibility = Versions.javaVersion - targetCompatibility = Versions.javaVersion - } - - kotlinOptions { - jvmTarget = Versions.jvmVersion - } - - buildFeatures { - buildConfig = true - dataBinding = true - viewBinding = true - compose = true - } -} - -dependencies { - implementation(project(":domain")) - implementation(project(":core:designsystem")) - - KotlinDependencies.run { - implementation(kotlin) - implementation(coroutines) - implementation(jsonSerialization) - implementation(dateTime) - } - - AndroidXDependencies.run { - implementation(coreKtx) - implementation(appCompat) - implementation(constraintLayout) - implementation(fragment) - implementation(startup) - implementation(legacy) - implementation(security) - implementation(hilt) - implementation(lifeCycleKtx) - implementation(lifecycleJava8) - implementation(splashScreen) - implementation(pagingRuntime) - implementation(workManager) - implementation(hiltWorkManager) - } - - KaptDependencies.run { - kapt(hiltCompiler) - kapt(hiltWorkManagerCompiler) - } - - implementation(MaterialDesignDependencies.materialDesign) - - TestDependencies.run { - testImplementation(jUnit) - androidTestImplementation(androidTest) - androidTestImplementation(espresso) - } - - ThirdPartyDependencies.run { - implementation(coil) - implementation(timber) - implementation(ossLicense) - } - - ComposeDependencies.run { - implementation(composeUi) - implementation(composeActivity) - implementation(composeMaterial3) - implementation(composeTooling) - } -} diff --git a/feature/mypage/consumer-rules.pro b/feature/mypage/consumer-rules.pro deleted file mode 100644 index e69de29..0000000 diff --git a/feature/mypage/proguard-rules.pro b/feature/mypage/proguard-rules.pro deleted file mode 100644 index 481bb43..0000000 --- a/feature/mypage/proguard-rules.pro +++ /dev/null @@ -1,21 +0,0 @@ -# Add project specific ProGuard rules here. -# You can control the set of applied configuration files using the -# proguardFiles setting in build.gradle. -# -# For more details, see -# http://developer.android.com/guide/developing/tools/proguard.html - -# If your project uses WebView with JS, uncomment the following -# and specify the fully qualified class name to the JavaScript interface -# class: -#-keepclassmembers class fqcn.of.javascript.interface.for.webview { -# public *; -#} - -# Uncomment this to preserve the line number information for -# debugging stack traces. -#-keepattributes SourceFile,LineNumberTable - -# If you keep the line number information, uncomment this to -# hide the original source file name. -#-renamesourcefileattribute SourceFile \ No newline at end of file diff --git a/feature/mypage/src/androidTest/java/com/zucchini/mypage/ExampleInstrumentedTest.kt b/feature/mypage/src/androidTest/java/com/zucchini/mypage/ExampleInstrumentedTest.kt deleted file mode 100644 index 77e01ac..0000000 --- a/feature/mypage/src/androidTest/java/com/zucchini/mypage/ExampleInstrumentedTest.kt +++ /dev/null @@ -1,24 +0,0 @@ -package com.zucchini.mypage - -import androidx.test.platform.app.InstrumentationRegistry -import androidx.test.ext.junit.runners.AndroidJUnit4 - -import org.junit.Test -import org.junit.runner.RunWith - -import org.junit.Assert.* - -/** - * Instrumented test, which will execute on an Android device. - * - * See [testing documentation](http://d.android.com/tools/testing). - */ -@RunWith(AndroidJUnit4::class) -class ExampleInstrumentedTest { - @Test - fun useAppContext() { - // Context of the app under test. - val appContext = InstrumentationRegistry.getInstrumentation().targetContext - assertEquals("com.zucchini.mypage.test", appContext.packageName) - } -} \ No newline at end of file diff --git a/feature/mypage/src/main/AndroidManifest.xml b/feature/mypage/src/main/AndroidManifest.xml deleted file mode 100644 index a5918e6..0000000 --- a/feature/mypage/src/main/AndroidManifest.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/feature/mypage/src/main/java/com/zucchini/mypage/MypageFragment.kt b/feature/mypage/src/main/java/com/zucchini/mypage/MypageFragment.kt deleted file mode 100644 index 1e85c9e..0000000 --- a/feature/mypage/src/main/java/com/zucchini/mypage/MypageFragment.kt +++ /dev/null @@ -1,60 +0,0 @@ -package com.zucchini.mypage - -import android.os.Bundle -import androidx.fragment.app.Fragment -import android.view.LayoutInflater -import android.view.View -import android.view.ViewGroup -import com.zucchini.feature.mypage.R - -// TODO: Rename parameter arguments, choose names that match -// the fragment initialization parameters, e.g. ARG_ITEM_NUMBER -private const val ARG_PARAM1 = "param1" -private const val ARG_PARAM2 = "param2" - -/** - * A simple [Fragment] subclass. - * Use the [MypageFragment.newInstance] factory method to - * create an instance of this fragment. - */ -class MypageFragment : Fragment() { - // TODO: Rename and change types of parameters - private var param1: String? = null - private var param2: String? = null - - override fun onCreate(savedInstanceState: Bundle?) { - super.onCreate(savedInstanceState) - arguments?.let { - param1 = it.getString(ARG_PARAM1) - param2 = it.getString(ARG_PARAM2) - } - } - - override fun onCreateView( - inflater: LayoutInflater, container: ViewGroup?, - savedInstanceState: Bundle? - ): View? { - // Inflate the layout for this fragment - return inflater.inflate(R.layout.fragment_mypage, container, false) - } - - companion object { - /** - * Use this factory method to create a new instance of - * this fragment using the provided parameters. - * - * @param param1 Parameter 1. - * @param param2 Parameter 2. - * @return A new instance of fragment MypageFragment. - */ - // TODO: Rename and change types and number of parameters - @JvmStatic - fun newInstance(param1: String, param2: String) = - MypageFragment().apply { - arguments = Bundle().apply { - putString(ARG_PARAM1, param1) - putString(ARG_PARAM2, param2) - } - } - } -} \ No newline at end of file diff --git a/feature/mypage/src/main/res/values/strings.xml b/feature/mypage/src/main/res/values/strings.xml deleted file mode 100644 index 0a72965..0000000 --- a/feature/mypage/src/main/res/values/strings.xml +++ /dev/null @@ -1,11 +0,0 @@ - - 신청 페이지 - 신청하러 가기 - 카카오톡 오픈 채팅을 통해 프로젝트 업로드 신청을 해보세요!\n슈플렉터에 우리 팀 프로젝트를 공유하고 다양한 숭실대 학우들과 소통할 수 있어요 - 내 프로젝트 신청하러 가기 - 카카오톡 오픈 채팅을 통해 개발자 프로필을 등록해보세요!\n슈플렉터에 내 포트폴리오를 공유하고 숭실대 학우들에게 나를 어필할 수 있어요 - 개발자 포트폴리오 신청하러 가기 - 이용약관 - 개인정보 처리방침 - 신고하기 - \ No newline at end of file diff --git a/feature/mypage/src/test/java/com/zucchini/mypage/ExampleUnitTest.kt b/feature/mypage/src/test/java/com/zucchini/mypage/ExampleUnitTest.kt deleted file mode 100644 index d943a84..0000000 --- a/feature/mypage/src/test/java/com/zucchini/mypage/ExampleUnitTest.kt +++ /dev/null @@ -1,17 +0,0 @@ -package com.zucchini.mypage - -import org.junit.Test - -import org.junit.Assert.* - -/** - * Example local unit test, which will execute on the development machine (host). - * - * See [testing documentation](http://d.android.com/tools/testing). - */ -class ExampleUnitTest { - @Test - fun addition_isCorrect() { - assertEquals(4, 2 + 2) - } -} \ No newline at end of file diff --git a/feature/projects/build.gradle.kts b/feature/projects/build.gradle.kts index 40a4d8c..aa90c0b 100644 --- a/feature/projects/build.gradle.kts +++ b/feature/projects/build.gradle.kts @@ -40,7 +40,6 @@ dependencies { implementation(project(":domain")) implementation(project(":core:designsystem")) implementation(project(":core:common")) - implementation(project(":feature:mypage")) KotlinDependencies.run { implementation(kotlin) @@ -85,6 +84,7 @@ dependencies { implementation(coil) implementation(timber) implementation(ossLicense) + implementation(dotIndicator) } ComposeDependencies.run { diff --git a/feature/projects/src/main/AndroidManifest.xml b/feature/projects/src/main/AndroidManifest.xml index 3f39271..13a68c9 100644 --- a/feature/projects/src/main/AndroidManifest.xml +++ b/feature/projects/src/main/AndroidManifest.xml @@ -3,10 +3,15 @@ + ) : + ListAdapter( + ItemDiffCallback( + onItemsTheSame = { oldItem, newItem -> oldItem == newItem }, + onContentsTheSame = { oldItem, newItem -> oldItem == newItem }, + ), + ), + ViewPager2.PageTransformer { + + override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): PagerViewHolder { + val view = LayoutInflater.from(parent.context) + .inflate(R.layout.item_introduce_view_pager, parent, false) + return PagerViewHolder(ItemIntroduceViewPagerBinding.bind(view)) + } + + class PagerViewHolder(private val binding: ItemIntroduceViewPagerBinding) : + RecyclerView.ViewHolder(binding.root) { + + fun onBindView(imageInfo: Int) { + binding.ivLoginViewPagerItem.load(imageInfo) { + placeholder(imageInfo) + error(imageInfo) + } + } + } + + override fun getItemCount(): Int = imageList.size + + override fun onBindViewHolder(holder: PagerViewHolder, position: Int) { + val exploreImage = imageList[position] + holder.onBindView(exploreImage) + } + + override fun transformPage(view: View, position: Float) { + view.alpha = 1 - kotlin.math.abs(position) + } +} diff --git a/feature/projects/src/main/java/com/zucchini/projects/dummy/DeveloperInfoDummy.kt b/feature/projects/src/main/java/com/zucchini/projects/dummy/DeveloperInfoDummy.kt index 0ff591d..ea8a461 100644 --- a/feature/projects/src/main/java/com/zucchini/projects/dummy/DeveloperInfoDummy.kt +++ b/feature/projects/src/main/java/com/zucchini/projects/dummy/DeveloperInfoDummy.kt @@ -9,61 +9,61 @@ object DeveloperInfoDummy { image = R.drawable.developer_default_image, name = "강유리", field = "안드로이드 개발\n빅데이터", - githubId = "sjkfjklsdf", + githubId = "yuri134", ), DeveloperInfo( image = R.drawable.developer_default_image, name = "최숙희", field = "서버 개발", - githubId = "234543213", + githubId = "khq223", ), DeveloperInfo( image = R.drawable.developer_default_image, - name = "강유리", - field = "안드로이드 개발", - githubId = "sjkfjklsdf", + name = "정찬민", + field = "백엔드 개발", + githubId = "feg001", ), DeveloperInfo( image = R.drawable.developer_default_image, - name = "강유리", - field = "안드로이드 개발", - githubId = "sjkfjklsdf", + name = "조현근", + field = "정보 보안", + githubId = "gvd262", ), DeveloperInfo( image = R.drawable.developer_default_image, - name = "강유리", - field = "안드로이드 개발", - githubId = "sjkfjklsdf", + name = "김민지", + field = "iOS 개발", + githubId = "iosgqe11", ), DeveloperInfo( image = R.drawable.developer_default_image, - name = "강유리", - field = "안드로이드 개발", - githubId = "sjkfjklsdf", + name = "김찬우", + field = "인공지능", + githubId = "sjkdf111", ), DeveloperInfo( image = R.drawable.developer_default_image, - name = "강유리", - field = "안드로이드 개발", - githubId = "sjkfjklsdf", + name = "김건찬", + field = "게임", + githubId = "lovegame", ), DeveloperInfo( image = R.drawable.developer_default_image, - name = "강유리", - field = "안드로이드 개발", - githubId = "sjkfjklsdf", + name = "김서현", + field = "웹 프론트", + githubId = "llwg1", ), DeveloperInfo( image = R.drawable.developer_default_image, - name = "강유리", - field = "안드로이드 개발", - githubId = "sjkfjklsdf", + name = "김민수", + field = "안드로이드", + githubId = "minsu111", ), DeveloperInfo( image = R.drawable.developer_default_image, - name = "강유리", - field = "안드로이드 개발", - githubId = "sjkfjklsdf", + name = "진수", + field = "임베디드", + githubId = "sf11232", ), DeveloperInfo( image = R.drawable.developer_default_image, diff --git a/feature/projects/src/main/java/com/zucchini/projects/dummy/ProjectDummyList.kt b/feature/projects/src/main/java/com/zucchini/projects/dummy/ProjectDummyList.kt index 7909545..32d5b41 100644 --- a/feature/projects/src/main/java/com/zucchini/projects/dummy/ProjectDummyList.kt +++ b/feature/projects/src/main/java/com/zucchini/projects/dummy/ProjectDummyList.kt @@ -1,37 +1,36 @@ package com.zucchini.projects.dummy import com.zucchini.domain.model.ProjectInfo -import com.zucchini.feature.projects.R object ProjectDummyList { val projectDummyList = listOf( ProjectInfo( - image = R.drawable.devinfo_navi_24, - name = "프로젝트1", - description = "프로젝트1 설명", + image = null, + name = "ssu-plector", + description = "숭실대학교 IT대 학생을 위한 서비스", sorted = "서비스", - clicked = 0, + clicked = 450, ), ProjectInfo( - image = R.drawable.devinfo_navi_24, - name = "프로젝트2", - description = "프로젝트2 설명", - sorted = "임베디드", - clicked = 0, + image = null, + name = "하면함", + description = "도파민 탈출! 하면함", + sorted = "서비스", + clicked = 133, ), ProjectInfo( image = null, - name = "프로젝트3", - description = "프로젝트3 설명", - sorted = "IoT", - clicked = 0, + name = "오구오구", + description = "귀여운 아기 오구의 탈출 게임", + sorted = "게임", + clicked = 133, ), ProjectInfo( - image = R.drawable.devinfo_navi_24, - name = "프로젝트4", - description = "프로젝트4 설명", - sorted = "빅데이터", - clicked = 0, + image = null, + name = "아브아브", + description = "아이스브레이킹을 편하게!", + sorted = "서비스", + clicked = 142, ), ProjectInfo( image = null, diff --git a/feature/projects/src/main/res/drawable/project_introduction_1.png b/feature/projects/src/main/res/drawable/project_introduction_1.png new file mode 100644 index 0000000..ae09f7f Binary files /dev/null and b/feature/projects/src/main/res/drawable/project_introduction_1.png differ diff --git a/feature/projects/src/main/res/drawable/project_introduction_2.png b/feature/projects/src/main/res/drawable/project_introduction_2.png new file mode 100644 index 0000000..f3791ab Binary files /dev/null and b/feature/projects/src/main/res/drawable/project_introduction_2.png differ diff --git a/feature/projects/src/main/res/drawable/project_introduction_3.png b/feature/projects/src/main/res/drawable/project_introduction_3.png new file mode 100644 index 0000000..08974b4 Binary files /dev/null and b/feature/projects/src/main/res/drawable/project_introduction_3.png differ diff --git a/feature/projects/src/main/res/drawable/project_introduction_4.png b/feature/projects/src/main/res/drawable/project_introduction_4.png new file mode 100644 index 0000000..d18ca17 Binary files /dev/null and b/feature/projects/src/main/res/drawable/project_introduction_4.png differ diff --git a/feature/projects/src/main/res/drawable/project_introduction_5.png b/feature/projects/src/main/res/drawable/project_introduction_5.png new file mode 100644 index 0000000..8952831 Binary files /dev/null and b/feature/projects/src/main/res/drawable/project_introduction_5.png differ diff --git a/feature/projects/src/main/res/layout/activity_dev_detail.xml b/feature/projects/src/main/res/layout/activity_dev_detail.xml index 9700974..bd255d6 100644 --- a/feature/projects/src/main/res/layout/activity_dev_detail.xml +++ b/feature/projects/src/main/res/layout/activity_dev_detail.xml @@ -172,7 +172,7 @@ android:layout_marginStart="18dp" android:fontFamily="@font/pretendardregular" android:gravity="start" - android:text="https://github.com/kangyuri1114" + android:text="happyuri" android:textColor="@color/gray2" android:textSize="10sp" app:layout_constraintStart_toStartOf="parent" @@ -202,7 +202,7 @@ android:layout_marginEnd="5dp" app:layout_constraintEnd_toEndOf="parent" android:layout_marginStart="18dp" - android:text="https://github.com/kangyuri1114" + android:text="yuri@gmail.com" android:textColor="@color/gray2" android:textSize="10sp" app:layout_constraintStart_toStartOf="parent" @@ -294,7 +294,7 @@ android:fontFamily="@font/pretendardmedium" android:gravity="center" android:padding="5dp" - android:text="JAVA" + android:text="Kotlin" android:textColor="@color/olive_black" android:textSize="10sp" app:layout_constraintStart_toEndOf="@+id/tv_dev_stack_language1" @@ -311,7 +311,7 @@ android:fontFamily="@font/pretendardmedium" android:gravity="center" android:padding="5dp" - android:text="JAVA" + android:text="C++" android:textColor="@color/olive_black" android:textSize="10sp" app:layout_constraintStart_toEndOf="@+id/tv_dev_stack_language2" @@ -341,7 +341,7 @@ android:fontFamily="@font/pretendardmedium" android:gravity="center" android:padding="5dp" - android:text="JAVA" + android:text="Android Studio" android:textColor="@color/olive_black" android:textSize="10sp" app:layout_constraintStart_toStartOf="parent" @@ -358,7 +358,7 @@ android:fontFamily="@font/pretendardmedium" android:gravity="center" android:padding="5dp" - android:text="JAVA" + android:text="Spring" android:textColor="@color/olive_black" android:textSize="10sp" app:layout_constraintStart_toEndOf="@+id/tv_dev_stack_tech1" @@ -375,7 +375,7 @@ android:fontFamily="@font/pretendardmedium" android:gravity="center" android:padding="5dp" - android:text="JAVA" + android:text="데이터 분석" android:textColor="@color/olive_black" android:textSize="10sp" app:layout_constraintStart_toEndOf="@+id/tv_dev_stack_tech2" @@ -405,7 +405,7 @@ android:fontFamily="@font/pretendardmedium" android:gravity="center" android:padding="5dp" - android:text="JAVA" + android:text="Github" android:textColor="@color/olive_black" android:textSize="10sp" app:layout_constraintStart_toStartOf="parent" @@ -422,7 +422,7 @@ android:fontFamily="@font/pretendardmedium" android:gravity="center" android:padding="5dp" - android:text="JAVA" + android:text="Slack" android:textColor="@color/olive_black" android:textSize="10sp" app:layout_constraintStart_toEndOf="@+id/tv_dev_stack_cooperation1" @@ -439,7 +439,7 @@ android:fontFamily="@font/pretendardmedium" android:gravity="center" android:padding="5dp" - android:text="JAVA" + android:text="Discord" android:textColor="@color/olive_black" android:textSize="10sp" app:layout_constraintStart_toEndOf="@+id/tv_dev_stack_cooperation2" diff --git a/feature/projects/src/main/res/layout/activity_introduce.xml b/feature/projects/src/main/res/layout/activity_introduce.xml new file mode 100644 index 0000000..36f3293 --- /dev/null +++ b/feature/projects/src/main/res/layout/activity_introduce.xml @@ -0,0 +1,52 @@ + + + + + + + + + + diff --git a/feature/projects/src/main/res/layout/activity_project_detail.xml b/feature/projects/src/main/res/layout/activity_project_detail.xml index 234fa3a..78e401b 100644 --- a/feature/projects/src/main/res/layout/activity_project_detail.xml +++ b/feature/projects/src/main/res/layout/activity_project_detail.xml @@ -97,7 +97,7 @@ android:layout_marginEnd="5dp" android:fontFamily="@font/pretendardblack" android:gravity="left|center_horizontal" - android:text="임베디드" + android:text="안드로이드 앱 서비스" android:textColor="@color/gray2" android:textSize="10sp" app:layout_constraintEnd_toEndOf="parent" @@ -127,7 +127,7 @@ android:layout_marginEnd="5dp" android:fontFamily="@font/pretendardregular" android:gravity="start" - android:text="https://github.com/kangyuri1114" + android:text="https://github.com/ssu-plector" android:textColor="@color/gray2" android:textSize="10sp" app:layout_constraintEnd_toEndOf="parent" @@ -157,7 +157,7 @@ android:layout_marginEnd="5dp" android:fontFamily="@font/pretendardregular" android:gravity="start" - android:text="우리 프로젝트는 말이죠 그냥 어쩌구" + android:text="우리 프로젝트는 말이죠 봐야 압니다! 관심있으면 연락주세요★" android:textColor="@color/gray2" android:textSize="10sp" app:layout_constraintEnd_toEndOf="parent" @@ -251,7 +251,7 @@ android:fontFamily="@font/pretendardmedium" android:gravity="center" android:padding="5dp" - android:text="JAVA" + android:text="Kotlin" android:textColor="@color/olive_black" android:textSize="10sp" app:layout_constraintStart_toEndOf="@+id/tv_dev_stack_language1" @@ -268,7 +268,7 @@ android:fontFamily="@font/pretendardmedium" android:gravity="center" android:padding="5dp" - android:text="JAVA" + android:text="MYSQL" android:textColor="@color/olive_black" android:textSize="10sp" app:layout_constraintStart_toEndOf="@+id/tv_dev_stack_language2" @@ -298,7 +298,7 @@ android:fontFamily="@font/pretendardmedium" android:gravity="center" android:padding="5dp" - android:text="JAVA" + android:text="Android" android:textColor="@color/olive_black" android:textSize="10sp" app:layout_constraintStart_toStartOf="parent" @@ -315,7 +315,7 @@ android:fontFamily="@font/pretendardmedium" android:gravity="center" android:padding="5dp" - android:text="JAVA" + android:text="Crawling" android:textColor="@color/olive_black" android:textSize="10sp" app:layout_constraintStart_toEndOf="@+id/tv_dev_stack_tech1" @@ -332,7 +332,7 @@ android:fontFamily="@font/pretendardmedium" android:gravity="center" android:padding="5dp" - android:text="JAVA" + android:text="Spring" android:textColor="@color/olive_black" android:textSize="10sp" app:layout_constraintStart_toEndOf="@+id/tv_dev_stack_tech2" @@ -362,7 +362,7 @@ android:fontFamily="@font/pretendardmedium" android:gravity="center" android:padding="5dp" - android:text="JAVA" + android:text="Discord" android:textColor="@color/olive_black" android:textSize="10sp" app:layout_constraintStart_toStartOf="parent" @@ -379,7 +379,7 @@ android:fontFamily="@font/pretendardmedium" android:gravity="center" android:padding="5dp" - android:text="JAVA" + android:text="Github" android:textColor="@color/olive_black" android:textSize="10sp" app:layout_constraintStart_toEndOf="@+id/tv_dev_stack_cooperation1" @@ -396,7 +396,7 @@ android:fontFamily="@font/pretendardmedium" android:gravity="center" android:padding="5dp" - android:text="JAVA" + android:text="Slack" android:textColor="@color/olive_black" android:textSize="10sp" app:layout_constraintStart_toEndOf="@+id/tv_dev_stack_cooperation2" diff --git a/feature/mypage/src/main/res/layout/fragment_mypage.xml b/feature/projects/src/main/res/layout/fragment_mypage.xml similarity index 99% rename from feature/mypage/src/main/res/layout/fragment_mypage.xml rename to feature/projects/src/main/res/layout/fragment_mypage.xml index c68fe68..607a46e 100644 --- a/feature/mypage/src/main/res/layout/fragment_mypage.xml +++ b/feature/projects/src/main/res/layout/fragment_mypage.xml @@ -3,7 +3,7 @@ xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" - tools:context="com.zucchini.mypage.MypageFragment"> + tools:context="com.zucchini.projects.MypageFragment"> + + + + \ No newline at end of file diff --git a/feature/projects/src/main/res/navigation/nav_graph.xml b/feature/projects/src/main/res/navigation/nav_graph.xml index 8e4b9da..c5be909 100644 --- a/feature/projects/src/main/res/navigation/nav_graph.xml +++ b/feature/projects/src/main/res/navigation/nav_graph.xml @@ -13,6 +13,6 @@ android:label="Projects Fragment" /> diff --git a/feature/projects/src/main/res/values/strings.xml b/feature/projects/src/main/res/values/strings.xml index 62a694a..857260d 100644 --- a/feature/projects/src/main/res/values/strings.xml +++ b/feature/projects/src/main/res/values/strings.xml @@ -19,4 +19,14 @@ 프로젝트 소개 관련 링크 개발자 정보 + 화면 터치 시 슈플렉터를 시작할 수 있어요! + 신청 페이지 + 신청하러 가기 + 카카오톡 오픈 채팅을 통해 프로젝트 업로드 신청을 해보세요!\n슈플렉터에 우리 팀 프로젝트를 공유하고 다양한 숭실대 학우들과 소통할 수 있어요 + 내 프로젝트 신청하러 가기 + 카카오톡 오픈 채팅을 통해 개발자 프로필을 등록해보세요!\n슈플렉터에 내 포트폴리오를 공유하고 숭실대 학우들에게 나를 어필할 수 있어요 + 개발자 포트폴리오 신청하러 가기 + 이용약관 + 개인정보 처리방침 + 신고하기 \ No newline at end of file diff --git a/settings.gradle.kts b/settings.gradle.kts index 4aca09d..ffa972e 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -20,7 +20,6 @@ include(":app") include(":domain") include(":data") include(":feature") -include(":feature:mypage") include(":feature:projects") include(":core:designsystem") include(":core:common")