From 4b6dcb1cc4932f20c3ae649d74b93881ea984b66 Mon Sep 17 00:00:00 2001 From: RudraYBedekar Date: Tue, 7 Apr 2026 16:09:02 -0400 Subject: [PATCH 1/2] Refactored code, updated dependencies, and removed deprecated usage --- README.md | 28 +++++++++---------- .../githubstore/convention/KotlinAndroid.kt | 4 --- composeApp/build.gradle.kts | 15 +++------- core/presentation/build.gradle.kts | 2 +- .../components/ScrollbarContainer.jvm.kt | 2 ++ feature/apps/presentation/build.gradle.kts | 2 +- .../zed/rainxch/apps/presentation/AppsRoot.kt | 6 ++-- feature/auth/presentation/build.gradle.kts | 2 +- feature/details/presentation/build.gradle.kts | 2 +- .../presentation/components/AppHeader.kt | 2 -- .../components/SmartInstallButton.kt | 1 - .../dev-profile/presentation/build.gradle.kts | 2 +- .../favourites/presentation/build.gradle.kts | 2 +- feature/home/presentation/build.gradle.kts | 2 +- feature/profile/presentation/build.gradle.kts | 2 +- .../presentation/build.gradle.kts | 2 +- feature/search/presentation/build.gradle.kts | 2 +- feature/starred/presentation/build.gradle.kts | 2 +- feature/tweaks/presentation/build.gradle.kts | 2 +- .../tweaks/presentation/TweaksViewModel.kt | 1 - gradle/libs.versions.toml | 1 + 21 files changed, 35 insertions(+), 49 deletions(-) diff --git a/README.md b/README.md index f403584f6..acba0b388 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@
-
+
@@ -10,7 +10,7 @@ -
+

API @@ -18,8 +18,8 @@ Compose Multiplatform material -
-
+
+
@@ -29,8 +29,8 @@ -
-
+
+
@@ -40,8 +40,8 @@ -
-
+
+

@@ -52,8 +52,6 @@

-

-
# 🗺️ Project Overview @@ -160,9 +158,9 @@ GitHub® is a registered trademark of GitHub, Inc. Featured by HowToMen -
+
HowToMen: Top 20 Best Android Apps 2026 | Top 12 App Stores that are Better than Google Play Store -
+
HelloGitHub: Featured Project

@@ -339,7 +337,7 @@ Sync the project and run the app. You should now be able to sign in with GitHub. ## ☕ Support the project -GitHub Store is built and maintained by high school student. Your support helps him: +GitHub Store is built and maintained by a high school student. Your support helps him: ✅ **Keep the app bug-free** — respond to issues and ship fixes quickly ✅ **Add community-requested features** — implement what users actually need @@ -371,7 +369,7 @@ GitHub by third‑party developers. The contents, safety, and behavior of those downloads are entirely the responsibility of their respective authors and distributors, not this project. -By using GithubStore, you understand and agree that you install and run any downloaded software at +By using GitHub Store, you understand and agree that you install and run any downloaded software at your own risk. This project does not review, validate, or guarantee that any installer is safe, free of malware, or fit for any particular purpose. @@ -392,7 +390,7 @@ fit for any particular purpose. ## 📄 License -GitHub Store will be released under the **Apache License, Version 2.0**. +GitHub Store is released under the **Apache License, Version 2.0**. ``` Copyright 2025 rainxchzed diff --git a/build-logic/convention/src/main/kotlin/zed/rainxch/githubstore/convention/KotlinAndroid.kt b/build-logic/convention/src/main/kotlin/zed/rainxch/githubstore/convention/KotlinAndroid.kt index c2d886d58..4f77849e2 100644 --- a/build-logic/convention/src/main/kotlin/zed/rainxch/githubstore/convention/KotlinAndroid.kt +++ b/build-logic/convention/src/main/kotlin/zed/rainxch/githubstore/convention/KotlinAndroid.kt @@ -44,10 +44,6 @@ internal fun Project.configureKotlin() { tasks.withType().configureEach { compilerOptions { jvmTarget.set(JvmTarget.JVM_17) - - freeCompilerArgs.add( - "-opt-in=kotlinx.coroutines.ExperimentalCoroutinesApi", - ) } } } diff --git a/composeApp/build.gradle.kts b/composeApp/build.gradle.kts index a86d128b2..9b229e40a 100644 --- a/composeApp/build.gradle.kts +++ b/composeApp/build.gradle.kts @@ -75,11 +75,11 @@ kotlin { implementation(libs.touchlab.kermit) implementation(libs.kotlinx.collections.immutable) - implementation(compose.runtime) - implementation(compose.foundation) + implementation(libs.jetbrains.compose.runtime) + implementation(libs.jetbrains.compose.foundation) implementation(libs.jetbrains.compose.material3) - implementation(compose.ui) - implementation(compose.components.resources) + implementation(libs.jetbrains.compose.ui) + implementation(libs.jetbrains.compose.components.resources) implementation(libs.androidx.compose.ui.tooling.preview) implementation(libs.jetbrains.compose.viewmodel) @@ -96,13 +96,6 @@ kotlin { implementation(libs.koin.compose.viewmodel) implementation(libs.koin.compose.viewmodel) - implementation(compose.desktop.linux_x64) - implementation(compose.desktop.linux_arm64) - implementation(compose.desktop.macos_x64) - implementation(compose.desktop.macos_arm64) - implementation(compose.desktop.windows_x64) - implementation(compose.desktop.windows_arm64) - implementation(libs.slf4j.simple) } } diff --git a/core/presentation/build.gradle.kts b/core/presentation/build.gradle.kts index f0c149f0f..479d4a297 100644 --- a/core/presentation/build.gradle.kts +++ b/core/presentation/build.gradle.kts @@ -17,7 +17,7 @@ kotlin { implementation(libs.kotlinx.datetime) implementation(libs.kotlinx.collections.immutable) - implementation(compose.components.resources) + implementation(libs.jetbrains.compose.components.resources) implementation(libs.androidx.compose.ui.tooling.preview) } diff --git a/core/presentation/src/jvmMain/kotlin/zed/rainxch/core/presentation/components/ScrollbarContainer.jvm.kt b/core/presentation/src/jvmMain/kotlin/zed/rainxch/core/presentation/components/ScrollbarContainer.jvm.kt index 1fb43cc16..67e24696e 100644 --- a/core/presentation/src/jvmMain/kotlin/zed/rainxch/core/presentation/components/ScrollbarContainer.jvm.kt +++ b/core/presentation/src/jvmMain/kotlin/zed/rainxch/core/presentation/components/ScrollbarContainer.jvm.kt @@ -1,3 +1,5 @@ +@file:Suppress("DEPRECATION") + package zed.rainxch.core.presentation.components import androidx.compose.foundation.LocalScrollbarStyle diff --git a/feature/apps/presentation/build.gradle.kts b/feature/apps/presentation/build.gradle.kts index 94e5dfe34..3e0216085 100644 --- a/feature/apps/presentation/build.gradle.kts +++ b/feature/apps/presentation/build.gradle.kts @@ -13,7 +13,7 @@ kotlin { implementation(projects.feature.apps.domain) implementation(libs.androidx.compose.ui.tooling.preview) - implementation(compose.components.resources) + implementation(libs.jetbrains.compose.components.resources) implementation(libs.bundles.landscapist) implementation(libs.liquid) diff --git a/feature/apps/presentation/src/commonMain/kotlin/zed/rainxch/apps/presentation/AppsRoot.kt b/feature/apps/presentation/src/commonMain/kotlin/zed/rainxch/apps/presentation/AppsRoot.kt index d013ceb15..670b264fd 100644 --- a/feature/apps/presentation/src/commonMain/kotlin/zed/rainxch/apps/presentation/AppsRoot.kt +++ b/feature/apps/presentation/src/commonMain/kotlin/zed/rainxch/apps/presentation/AppsRoot.kt @@ -22,13 +22,13 @@ import androidx.compose.foundation.shape.CircleShape import androidx.compose.foundation.shape.RoundedCornerShape import androidx.compose.material.icons.Icons import androidx.compose.material.icons.automirrored.filled.OpenInNew +import androidx.compose.material.icons.automirrored.filled.Sort import androidx.compose.material.icons.filled.Add import androidx.compose.material.icons.filled.Cancel import androidx.compose.material.icons.filled.CheckCircle import androidx.compose.material.icons.filled.Close import androidx.compose.material.icons.filled.Refresh import androidx.compose.material.icons.filled.Search -import androidx.compose.material.icons.filled.Sort import androidx.compose.material.icons.filled.Update import androidx.compose.material.icons.outlined.DeleteOutline import androidx.compose.material.icons.outlined.FileDownload @@ -77,10 +77,10 @@ import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.unit.dp import com.skydoves.landscapist.coil3.CoilImage import io.github.fletchmckee.liquid.liquefiable -import kotlinx.datetime.Instant import kotlinx.datetime.TimeZone import kotlinx.datetime.toLocalDateTime import kotlinx.coroutines.launch +import kotlin.time.Instant import org.jetbrains.compose.resources.stringResource import org.koin.compose.viewmodel.koinViewModel import zed.rainxch.apps.presentation.components.InstalledAppIcon @@ -209,7 +209,7 @@ fun AppsScreen( Box { IconButton(onClick = { showSortMenu = true }) { Icon( - imageVector = Icons.Default.Sort, + imageVector = Icons.AutoMirrored.Filled.Sort, contentDescription = stringResource(Res.string.sort_apps), ) } diff --git a/feature/auth/presentation/build.gradle.kts b/feature/auth/presentation/build.gradle.kts index db353fdb8..5db6ce74b 100644 --- a/feature/auth/presentation/build.gradle.kts +++ b/feature/auth/presentation/build.gradle.kts @@ -13,7 +13,7 @@ kotlin { implementation(projects.feature.auth.domain) implementation(libs.androidx.compose.ui.tooling.preview) - implementation(compose.components.resources) + implementation(libs.jetbrains.compose.components.resources) } } diff --git a/feature/details/presentation/build.gradle.kts b/feature/details/presentation/build.gradle.kts index 9bc37297c..efb110c80 100644 --- a/feature/details/presentation/build.gradle.kts +++ b/feature/details/presentation/build.gradle.kts @@ -15,7 +15,7 @@ kotlin { implementation(libs.markdown.renderer) implementation(libs.markdown.renderer.coil3) - implementation(compose.components.resources) + implementation(libs.jetbrains.compose.components.resources) implementation(libs.liquid) implementation(libs.kotlinx.datetime) diff --git a/feature/details/presentation/src/commonMain/kotlin/zed/rainxch/details/presentation/components/AppHeader.kt b/feature/details/presentation/src/commonMain/kotlin/zed/rainxch/details/presentation/components/AppHeader.kt index 4e5426c25..0d3875f36 100644 --- a/feature/details/presentation/src/commonMain/kotlin/zed/rainxch/details/presentation/components/AppHeader.kt +++ b/feature/details/presentation/src/commonMain/kotlin/zed/rainxch/details/presentation/components/AppHeader.kt @@ -143,8 +143,6 @@ fun AppHeader( strokeCap = StrokeCap.Round, ) } - - else -> {} } } } diff --git a/feature/details/presentation/src/commonMain/kotlin/zed/rainxch/details/presentation/components/SmartInstallButton.kt b/feature/details/presentation/src/commonMain/kotlin/zed/rainxch/details/presentation/components/SmartInstallButton.kt index c44103896..5dbe9a7f5 100644 --- a/feature/details/presentation/src/commonMain/kotlin/zed/rainxch/details/presentation/components/SmartInstallButton.kt +++ b/feature/details/presentation/src/commonMain/kotlin/zed/rainxch/details/presentation/components/SmartInstallButton.kt @@ -94,7 +94,6 @@ fun SmartInstallButton( val isSameVersionInstalled = isInstalled && - installedApp != null && normalizeVersion(installedApp.installedVersion) == normalizeVersion( state.selectedRelease?.tagName ?: "", diff --git a/feature/dev-profile/presentation/build.gradle.kts b/feature/dev-profile/presentation/build.gradle.kts index 8e0c2d58e..8eb6e5587 100644 --- a/feature/dev-profile/presentation/build.gradle.kts +++ b/feature/dev-profile/presentation/build.gradle.kts @@ -13,7 +13,7 @@ kotlin { implementation(projects.feature.devProfile.domain) implementation(libs.androidx.compose.ui.tooling.preview) - implementation(compose.components.resources) + implementation(libs.jetbrains.compose.components.resources) implementation(libs.bundles.landscapist) implementation(libs.kotlinx.collections.immutable) diff --git a/feature/favourites/presentation/build.gradle.kts b/feature/favourites/presentation/build.gradle.kts index 41da218dd..81e42dba3 100644 --- a/feature/favourites/presentation/build.gradle.kts +++ b/feature/favourites/presentation/build.gradle.kts @@ -16,7 +16,7 @@ kotlin { implementation(libs.kotlinx.collections.immutable) implementation(libs.androidx.compose.ui.tooling.preview) - implementation(compose.components.resources) + implementation(libs.jetbrains.compose.components.resources) } } diff --git a/feature/home/presentation/build.gradle.kts b/feature/home/presentation/build.gradle.kts index f8641d176..2086cdadd 100644 --- a/feature/home/presentation/build.gradle.kts +++ b/feature/home/presentation/build.gradle.kts @@ -15,7 +15,7 @@ kotlin { implementation(libs.liquid) implementation(libs.kotlinx.collections.immutable) - implementation(compose.components.resources) + implementation(libs.jetbrains.compose.components.resources) implementation(libs.androidx.compose.ui.tooling.preview) } diff --git a/feature/profile/presentation/build.gradle.kts b/feature/profile/presentation/build.gradle.kts index f2e2d4756..f234c33a8 100644 --- a/feature/profile/presentation/build.gradle.kts +++ b/feature/profile/presentation/build.gradle.kts @@ -13,7 +13,7 @@ kotlin { implementation(projects.feature.profile.domain) implementation(libs.androidx.compose.ui.tooling.preview) - implementation(compose.components.resources) + implementation(libs.jetbrains.compose.components.resources) implementation(libs.liquid) } diff --git a/feature/recently-viewed/presentation/build.gradle.kts b/feature/recently-viewed/presentation/build.gradle.kts index ac242bd1d..614614048 100644 --- a/feature/recently-viewed/presentation/build.gradle.kts +++ b/feature/recently-viewed/presentation/build.gradle.kts @@ -15,7 +15,7 @@ kotlin { implementation(libs.kotlinx.collections.immutable) implementation(libs.androidx.compose.ui.tooling.preview) - implementation(compose.components.resources) + implementation(libs.jetbrains.compose.components.resources) } } diff --git a/feature/search/presentation/build.gradle.kts b/feature/search/presentation/build.gradle.kts index ccb6488ef..0e79e9ebe 100644 --- a/feature/search/presentation/build.gradle.kts +++ b/feature/search/presentation/build.gradle.kts @@ -15,7 +15,7 @@ kotlin { implementation(libs.liquid) implementation(libs.androidx.compose.ui.tooling.preview) - implementation(compose.components.resources) + implementation(libs.jetbrains.compose.components.resources) implementation(libs.kotlinx.collections.immutable) } diff --git a/feature/starred/presentation/build.gradle.kts b/feature/starred/presentation/build.gradle.kts index a667d9277..b0533fa48 100644 --- a/feature/starred/presentation/build.gradle.kts +++ b/feature/starred/presentation/build.gradle.kts @@ -17,7 +17,7 @@ kotlin { implementation(libs.kotlinx.collections.immutable) implementation(libs.androidx.compose.ui.tooling.preview) - implementation(compose.components.resources) + implementation(libs.jetbrains.compose.components.resources) } } diff --git a/feature/tweaks/presentation/build.gradle.kts b/feature/tweaks/presentation/build.gradle.kts index f2e2d4756..f234c33a8 100644 --- a/feature/tweaks/presentation/build.gradle.kts +++ b/feature/tweaks/presentation/build.gradle.kts @@ -13,7 +13,7 @@ kotlin { implementation(projects.feature.profile.domain) implementation(libs.androidx.compose.ui.tooling.preview) - implementation(compose.components.resources) + implementation(libs.jetbrains.compose.components.resources) implementation(libs.liquid) } diff --git a/feature/tweaks/presentation/src/commonMain/kotlin/zed/rainxch/tweaks/presentation/TweaksViewModel.kt b/feature/tweaks/presentation/src/commonMain/kotlin/zed/rainxch/tweaks/presentation/TweaksViewModel.kt index 3c561e909..de26ebf77 100644 --- a/feature/tweaks/presentation/src/commonMain/kotlin/zed/rainxch/tweaks/presentation/TweaksViewModel.kt +++ b/feature/tweaks/presentation/src/commonMain/kotlin/zed/rainxch/tweaks/presentation/TweaksViewModel.kt @@ -313,7 +313,6 @@ class TweaksViewModel( when (action.type) { ProxyType.NONE -> ProxyConfig.None ProxyType.SYSTEM -> ProxyConfig.System - else -> return } viewModelScope.launch { runCatching { diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index f2af56d3f..7bc22e7f0 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -138,6 +138,7 @@ jetbrains-compose-material-icons-core = { module = "org.jetbrains.compose.materi jetbrains-compose-material-icons-extended = { module = "org.jetbrains.compose.material:material-icons-extended", version.ref = "material-icons" } jetbrains-compose-ui = { module = "org.jetbrains.compose.ui:ui", version.ref = "compose-jetbrains" } jetbrains-compose-foundation = { module = "org.jetbrains.compose.foundation:foundation", version.ref = "compose-jetbrains" } +jetbrains-compose-components-resources = { module = "org.jetbrains.compose.components:components-resources", version.ref = "compose-jetbrains" } jetbrains-lifecycle-viewmodel = { module = "org.jetbrains.androidx.lifecycle:lifecycle-viewmodel", version.ref = "compose-lifecycle" } jetbrains-lifecycle-compose = { group = "org.jetbrains.androidx.lifecycle", name = "lifecycle-runtime-compose", version.ref = "compose-lifecycle" } From 7ca103e072759910506823bbf543abaf620adcc3 Mon Sep 17 00:00:00 2001 From: RudraYBedekar Date: Tue, 7 Apr 2026 16:26:25 -0400 Subject: [PATCH 2/2] Refactored code, updated dependencies, and removed deprecated usage --- .../kotlin/zed/rainxch/apps/presentation/AppsRoot.kt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/feature/apps/presentation/src/commonMain/kotlin/zed/rainxch/apps/presentation/AppsRoot.kt b/feature/apps/presentation/src/commonMain/kotlin/zed/rainxch/apps/presentation/AppsRoot.kt index 670b264fd..5d603d7ad 100644 --- a/feature/apps/presentation/src/commonMain/kotlin/zed/rainxch/apps/presentation/AppsRoot.kt +++ b/feature/apps/presentation/src/commonMain/kotlin/zed/rainxch/apps/presentation/AppsRoot.kt @@ -1,4 +1,4 @@ -@file:OptIn(ExperimentalMaterial3Api::class, ExperimentalMaterial3ExpressiveApi::class) +@file:OptIn(ExperimentalMaterial3Api::class, ExperimentalMaterial3ExpressiveApi::class, ExperimentalTime::class) package zed.rainxch.apps.presentation @@ -80,6 +80,7 @@ import io.github.fletchmckee.liquid.liquefiable import kotlinx.datetime.TimeZone import kotlinx.datetime.toLocalDateTime import kotlinx.coroutines.launch +import kotlin.time.ExperimentalTime import kotlin.time.Instant import org.jetbrains.compose.resources.stringResource import org.koin.compose.viewmodel.koinViewModel