diff --git a/androidHyperskillApp/fastlane/metadata/android/en-US/title.txt b/androidHyperskillApp/fastlane/metadata/android/en-US/title.txt
index 41dd3eb972..87c7469933 100644
--- a/androidHyperskillApp/fastlane/metadata/android/en-US/title.txt
+++ b/androidHyperskillApp/fastlane/metadata/android/en-US/title.txt
@@ -1 +1 @@
-My Hyperskill
\ No newline at end of file
+Hyperskill: Learn to Code
\ No newline at end of file
diff --git a/androidHyperskillApp/src/main/AndroidManifest.xml b/androidHyperskillApp/src/main/AndroidManifest.xml
index a9f294cb72..4a7e598e7e 100644
--- a/androidHyperskillApp/src/main/AndroidManifest.xml
+++ b/androidHyperskillApp/src/main/AndroidManifest.xml
@@ -5,7 +5,7 @@
if (!isAdded) return@addKeyboardVisibilityListener
viewBinding.signInHyperskillLogoShapeableImageView.isVisible = !isVisible
diff --git a/androidHyperskillApp/src/main/java/org/hyperskill/app/android/auth/view/ui/fragment/AuthSocialFragment.kt b/androidHyperskillApp/src/main/java/org/hyperskill/app/android/auth/view/ui/fragment/AuthSocialFragment.kt
index 28b0654c58..6829eb7cdd 100644
--- a/androidHyperskillApp/src/main/java/org/hyperskill/app/android/auth/view/ui/fragment/AuthSocialFragment.kt
+++ b/androidHyperskillApp/src/main/java/org/hyperskill/app/android/auth/view/ui/fragment/AuthSocialFragment.kt
@@ -145,15 +145,9 @@ class AuthSocialFragment :
viewBinding.signInToTextView.text =
if (isInSignUpMode) {
- getString(
- SharedRes.string.auth_sign_up_title,
- getString(SharedRes.string.android_app_name)
- )
+ getString(SharedRes.string.auth_sign_up_title)
} else {
- getString(
- SharedRes.string.auth_log_in_title,
- getString(SharedRes.string.android_app_name)
- )
+ getString(SharedRes.string.auth_log_in_title)
}
authMaterialCardViewsAdapter.items = listOf(
diff --git a/androidHyperskillApp/src/main/res/layout/fragment_welcome.xml b/androidHyperskillApp/src/main/res/layout/fragment_welcome.xml
index 1533f8a89e..287283e0d4 100644
--- a/androidHyperskillApp/src/main/res/layout/fragment_welcome.xml
+++ b/androidHyperskillApp/src/main/res/layout/fragment_welcome.xml
@@ -28,7 +28,7 @@
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintWidth_max="@dimen/auth_button_max_width"
- android:text="@string/android_onboarding_title" />
+ android:text="@string/onboarding_title" />
CFBundleDevelopmentRegion
$(DEVELOPMENT_LANGUAGE)
CFBundleDisplayName
- My Hyperskill
+ Hyperskill
CFBundleExecutable
$(EXECUTABLE_NAME)
CFBundleIdentifier
diff --git a/iosHyperskillApp/iosHyperskillApp/Sources/Models/Constants/Strings.swift b/iosHyperskillApp/iosHyperskillApp/Sources/Models/Constants/Strings.swift
index 40f2a2b116..8a456e9dc5 100644
--- a/iosHyperskillApp/iosHyperskillApp/Sources/Models/Constants/Strings.swift
+++ b/iosHyperskillApp/iosHyperskillApp/Sources/Models/Constants/Strings.swift
@@ -7,7 +7,6 @@ enum Strings {
// MARK: - Common -
enum Common {
- static let appName = sharedStrings.ios_app_name.localized()
static let connectionError = sharedStrings.connection_error.localized()
static let done = sharedStrings.done.localized()
static let yes = sharedStrings.yes.localized()
@@ -53,8 +52,8 @@ enum Strings {
// MARK: Social
enum Social {
- static let logInTitle = sharedStrings.auth_log_in_title.format(args_: [Common.appName]).localized()
- static let signUpTitle = sharedStrings.auth_sign_up_title.format(args_: [Common.appName]).localized()
+ static let logInTitle = sharedStrings.auth_log_in_title.localized()
+ static let signUpTitle = sharedStrings.auth_sign_up_title.localized()
static let jetBrainsAccount = sharedStrings.auth_jetbrains_account_text.localized()
static let googleAccount = sharedStrings.auth_google_account_text.localized()
static let gitHubAccount = sharedStrings.auth_github_account_text.localized()
@@ -484,7 +483,7 @@ enum Strings {
// MARK: - Welcome -
enum Welcome {
- static let title = sharedStrings.ios_onboarding_title.localized()
+ static let title = sharedStrings.onboarding_title.localized()
static let text = sharedStrings.onboarding_text.localized()
static let primaryButton = sharedStrings.onboarding_primary_button_text.localized()
static let secondaryButton = sharedStrings.onboarding_secondary_button_text.localized()
diff --git a/shared/src/androidMain/kotlin/org/hyperskill/app/core/domain/platform/Platform.kt b/shared/src/androidMain/kotlin/org/hyperskill/app/core/domain/platform/Platform.kt
index 51c02f56aa..16a2ccdec5 100644
--- a/shared/src/androidMain/kotlin/org/hyperskill/app/core/domain/platform/Platform.kt
+++ b/shared/src/androidMain/kotlin/org/hyperskill/app/core/domain/platform/Platform.kt
@@ -1,8 +1,5 @@
package org.hyperskill.app.core.domain.platform
-import dev.icerock.moko.resources.StringResource
-import org.hyperskill.app.SharedResources
-
actual class Platform actual constructor() {
actual val platformType: PlatformType = PlatformType.ANDROID
actual val platformDescription: String = "Android ${android.os.Build.VERSION.SDK_INT}"
@@ -10,6 +7,4 @@ actual class Platform actual constructor() {
actual val analyticName: String = "android"
actual val feedbackName: String = "Android"
-
- actual val appNameResource: StringResource = SharedResources.strings.android_app_name
}
\ No newline at end of file
diff --git a/shared/src/commonMain/kotlin/org/hyperskill/app/core/domain/platform/Platform.kt b/shared/src/commonMain/kotlin/org/hyperskill/app/core/domain/platform/Platform.kt
index 74cd19ac19..7809c38a3c 100644
--- a/shared/src/commonMain/kotlin/org/hyperskill/app/core/domain/platform/Platform.kt
+++ b/shared/src/commonMain/kotlin/org/hyperskill/app/core/domain/platform/Platform.kt
@@ -1,7 +1,5 @@
package org.hyperskill.app.core.domain.platform
-import dev.icerock.moko.resources.StringResource
-
expect class Platform() {
val platformType: PlatformType
val platformDescription: String
@@ -9,6 +7,4 @@ expect class Platform() {
val analyticName: String
val feedbackName: String
-
- val appNameResource: StringResource
}
\ No newline at end of file
diff --git a/shared/src/commonMain/kotlin/org/hyperskill/app/profile_settings/domain/model/FeedbackEmailDataBuilder.kt b/shared/src/commonMain/kotlin/org/hyperskill/app/profile_settings/domain/model/FeedbackEmailDataBuilder.kt
index 43ce9c772d..a7b80bb1ff 100644
--- a/shared/src/commonMain/kotlin/org/hyperskill/app/profile_settings/domain/model/FeedbackEmailDataBuilder.kt
+++ b/shared/src/commonMain/kotlin/org/hyperskill/app/profile_settings/domain/model/FeedbackEmailDataBuilder.kt
@@ -2,7 +2,7 @@ package org.hyperskill.app.profile_settings.domain.model
import org.hyperskill.app.core.domain.platform.Platform
-object FeedbackEmailDataBuilder {
+internal object FeedbackEmailDataBuilder {
fun build(
supportEmail: String,
applicationName: String,
diff --git a/shared/src/commonMain/kotlin/org/hyperskill/app/profile_settings/presentation/ProfileSettingsActionDispatcher.kt b/shared/src/commonMain/kotlin/org/hyperskill/app/profile_settings/presentation/ProfileSettingsActionDispatcher.kt
index 21549c6446..6fc77b4d54 100644
--- a/shared/src/commonMain/kotlin/org/hyperskill/app/profile_settings/presentation/ProfileSettingsActionDispatcher.kt
+++ b/shared/src/commonMain/kotlin/org/hyperskill/app/profile_settings/presentation/ProfileSettingsActionDispatcher.kt
@@ -66,7 +66,7 @@ internal class ProfileSettingsActionDispatcher(
val feedbackEmailData = FeedbackEmailDataBuilder.build(
supportEmail = resourceProvider.getString(strings.settings_send_feedback_support_email),
- applicationName = resourceProvider.getString(platform.appNameResource),
+ applicationName = resourceProvider.getString(strings.app_name),
platform = platform,
userId = currentProfile?.id,
applicationVersion = userAgentInfo.versionCode
diff --git a/shared/src/commonMain/kotlin/org/hyperskill/app/request_review/modal/injection/RequestReviewModalComponentImpl.kt b/shared/src/commonMain/kotlin/org/hyperskill/app/request_review/modal/injection/RequestReviewModalComponentImpl.kt
index 41e5a0b73e..3e269ddbe4 100644
--- a/shared/src/commonMain/kotlin/org/hyperskill/app/request_review/modal/injection/RequestReviewModalComponentImpl.kt
+++ b/shared/src/commonMain/kotlin/org/hyperskill/app/request_review/modal/injection/RequestReviewModalComponentImpl.kt
@@ -17,7 +17,6 @@ internal class RequestReviewModalComponentImpl(
analyticInteractor = appGraph.analyticComponent.analyticInteractor,
logger = appGraph.loggerComponent.logger,
buildVariant = appGraph.commonComponent.buildKonfig.buildVariant,
- platform = appGraph.commonComponent.platform,
resourceProvider = appGraph.commonComponent.resourceProvider
)
}
\ No newline at end of file
diff --git a/shared/src/commonMain/kotlin/org/hyperskill/app/request_review/modal/injection/RequestReviewModalFeatureBuilder.kt b/shared/src/commonMain/kotlin/org/hyperskill/app/request_review/modal/injection/RequestReviewModalFeatureBuilder.kt
index 45666823dc..001f84e074 100644
--- a/shared/src/commonMain/kotlin/org/hyperskill/app/request_review/modal/injection/RequestReviewModalFeatureBuilder.kt
+++ b/shared/src/commonMain/kotlin/org/hyperskill/app/request_review/modal/injection/RequestReviewModalFeatureBuilder.kt
@@ -4,7 +4,6 @@ import co.touchlab.kermit.Logger
import org.hyperskill.app.analytic.domain.interactor.AnalyticInteractor
import org.hyperskill.app.analytic.presentation.wrapWithAnalyticLogger
import org.hyperskill.app.core.domain.BuildVariant
-import org.hyperskill.app.core.domain.platform.Platform
import org.hyperskill.app.core.presentation.transformState
import org.hyperskill.app.core.view.mapper.ResourceProvider
import org.hyperskill.app.logging.presentation.wrapWithLogger
@@ -27,7 +26,6 @@ internal object RequestReviewModalFeatureBuilder {
analyticInteractor: AnalyticInteractor,
logger: Logger,
buildVariant: BuildVariant,
- platform: Platform,
resourceProvider: ResourceProvider
): Feature {
val requestReviewModalReducer = RequestReviewModalReducer(
@@ -36,7 +34,6 @@ internal object RequestReviewModalFeatureBuilder {
).wrapWithLogger(buildVariant, logger, LOG_TAG)
val requestReviewModalViewStateMapper = RequestReviewModalViewStateMapper(
- platform = platform,
resourceProvider = resourceProvider
)
diff --git a/shared/src/commonMain/kotlin/org/hyperskill/app/request_review/modal/view/mapper/RequestReviewModalViewStateMapper.kt b/shared/src/commonMain/kotlin/org/hyperskill/app/request_review/modal/view/mapper/RequestReviewModalViewStateMapper.kt
index ffd2678fbf..370554b27c 100644
--- a/shared/src/commonMain/kotlin/org/hyperskill/app/request_review/modal/view/mapper/RequestReviewModalViewStateMapper.kt
+++ b/shared/src/commonMain/kotlin/org/hyperskill/app/request_review/modal/view/mapper/RequestReviewModalViewStateMapper.kt
@@ -1,13 +1,11 @@
package org.hyperskill.app.request_review.modal.view.mapper
import org.hyperskill.app.SharedResources
-import org.hyperskill.app.core.domain.platform.Platform
import org.hyperskill.app.core.view.mapper.ResourceProvider
import org.hyperskill.app.request_review.modal.presentation.RequestReviewModalFeature.State
import org.hyperskill.app.request_review.modal.presentation.RequestReviewModalFeature.ViewState
internal class RequestReviewModalViewStateMapper(
- private val platform: Platform,
private val resourceProvider: ResourceProvider
) {
fun map(state: State): ViewState =
@@ -15,8 +13,7 @@ internal class RequestReviewModalViewStateMapper(
State.Awaiting, State.Positive ->
ViewState(
title = resourceProvider.getString(
- SharedResources.strings.request_review_modal_state_awaiting_title,
- resourceProvider.getString(platform.appNameResource)
+ SharedResources.strings.request_review_modal_state_awaiting_title
),
description = null,
positiveButtonText = resourceProvider.getString(
diff --git a/shared/src/commonMain/kotlin/org/hyperskill/app/welcome_onboarding/questionnaire/view/WelcomeQuestionnaireViewStateMapper.kt b/shared/src/commonMain/kotlin/org/hyperskill/app/welcome_onboarding/questionnaire/view/WelcomeQuestionnaireViewStateMapper.kt
index bf14cbcf2b..26975b8eb8 100644
--- a/shared/src/commonMain/kotlin/org/hyperskill/app/welcome_onboarding/questionnaire/view/WelcomeQuestionnaireViewStateMapper.kt
+++ b/shared/src/commonMain/kotlin/org/hyperskill/app/welcome_onboarding/questionnaire/view/WelcomeQuestionnaireViewStateMapper.kt
@@ -13,11 +13,6 @@ class WelcomeQuestionnaireViewStateMapper(
private val platform: Platform,
private val resourceProvider: ResourceProvider
) {
- private val title = resourceProvider.getString(
- SharedResources.strings.welcome_questionnaire_title_template,
- resourceProvider.getString(platform.appNameResource)
- )
-
fun mapQuestionnaireTypeToViewState(type: WelcomeQuestionnaireType): WelcomeQuestionnaireViewState =
when (type) {
WelcomeQuestionnaireType.HOW_DID_YOU_HEAR_ABOUT_HYPERSKILL ->
@@ -28,7 +23,7 @@ class WelcomeQuestionnaireViewStateMapper(
private fun getHowDidYouHearAboutHyperskillViewState(): WelcomeQuestionnaireViewState =
WelcomeQuestionnaireViewState(
- title = title,
+ title = resourceProvider.getString(SharedResources.strings.welcome_questionnaire_title),
items = listOf(
WelcomeQuestionnaireItem(
ClientSource.TIK_TOK,
diff --git a/shared/src/commonMain/moko-resources/base/strings.xml b/shared/src/commonMain/moko-resources/base/strings.xml
index ebc27bcb72..20e8644056 100644
--- a/shared/src/commonMain/moko-resources/base/strings.xml
+++ b/shared/src/commonMain/moko-resources/base/strings.xml
@@ -1,8 +1,7 @@
- My Hyperskill
- Hyperskill
+ Hyperskill
Connection was lost
Sorry, something went wrong: please try again later.
@@ -39,8 +38,8 @@
User name
- Sign in to %s
- Sign up to %s
+ Sign in to Hyperskill
+ Sign up to Hyperskill
JetBrains Account
Google
GitHub
@@ -475,8 +474,7 @@
Me: If the IDE knows I\'m missing a semicolon, why won\'t it just add it itself? 🤔
- My Hyperskill
- Hyperskill
+ Hyperskill
Code a little every day, wherever you are.
Start for free
I already have an account
@@ -649,7 +647,7 @@
Search all of Hyperskill for topic theory
- Do you enjoy\n%s app?
+ Do you enjoy\nHyperskill app?
👍 Yes
👎 No
@@ -738,7 +736,7 @@
Start my journey
- How did you hear about\n%s?
+ How did you hear about\nHyperskill?
TikTok
Google Search
News/article/blog
diff --git a/shared/src/iosMain/kotlin/org/hyperskill/app/application_shortcuts/domain/interactor/ApplicationShortcutsInteractor.kt b/shared/src/iosMain/kotlin/org/hyperskill/app/application_shortcuts/domain/interactor/ApplicationShortcutsInteractor.kt
index 2400cdd0cc..7d6058537d 100644
--- a/shared/src/iosMain/kotlin/org/hyperskill/app/application_shortcuts/domain/interactor/ApplicationShortcutsInteractor.kt
+++ b/shared/src/iosMain/kotlin/org/hyperskill/app/application_shortcuts/domain/interactor/ApplicationShortcutsInteractor.kt
@@ -21,7 +21,7 @@ class ApplicationShortcutsInteractor(
return FeedbackEmailDataBuilder.build(
supportEmail = resourceProvider.getString(SharedResources.strings.settings_send_feedback_support_email),
- applicationName = resourceProvider.getString(platform.appNameResource),
+ applicationName = resourceProvider.getString(SharedResources.strings.app_name),
platform = platform,
userId = currentProfile?.id,
applicationVersion = userAgentInfo.versionCode
diff --git a/shared/src/iosMain/kotlin/org/hyperskill/app/core/domain/platform/Platform.kt b/shared/src/iosMain/kotlin/org/hyperskill/app/core/domain/platform/Platform.kt
index bc020ed73f..5d9e088074 100644
--- a/shared/src/iosMain/kotlin/org/hyperskill/app/core/domain/platform/Platform.kt
+++ b/shared/src/iosMain/kotlin/org/hyperskill/app/core/domain/platform/Platform.kt
@@ -1,7 +1,5 @@
package org.hyperskill.app.core.domain.platform
-import dev.icerock.moko.resources.StringResource
-import org.hyperskill.app.SharedResources
import platform.UIKit.UIDevice
actual class Platform actual constructor() {
@@ -12,6 +10,4 @@ actual class Platform actual constructor() {
actual val analyticName: String = "ios"
actual val feedbackName: String = "iOS"
-
- actual val appNameResource: StringResource = SharedResources.strings.ios_app_name
}
\ No newline at end of file