Skip to content

[Feature] Add Firebase Remote Config localization - #83

Merged
Velord merged 1 commit into
developfrom
feature/firebase-remote-localization
Aug 20, 2026
Merged

[Feature] Add Firebase Remote Config localization#83
Velord merged 1 commit into
developfrom
feature/firebase-remote-localization

Conversation

@Velord

@Velord Velord commented Aug 18, 2026

Copy link
Copy Markdown
Owner

Summary

  • replaces Compose Res.string usage with the AppString API backed by bundled core/core-resource/src/commonMain/composeResources/files/localization.json
  • keeps localization.json as the bundled localization document and generates only type-safe AppString.xxx keys; no generated default translation roster is maintained
  • models supported language choices with LanguagePreference enum values (default, en, es) and keeps the resolved active language separate in LocalizationState
  • uses languageRoster consistently in the localization schema and typed LocalizationStringMap values in the model
  • keeps parsing, validation, Remote Config access, and error reporting in :data:localization, with orchestration in LocalizationGateway
  • uses Firebase-KMP-Kit Remote Config and Crashlytics from commonMain; platform code is limited to locale/Firebase initialization where required
  • reports Remote Config/parsing failures instead of silently discarding them, while retaining bundled/activated localization when remote refresh fails
  • initializes localization through one InitializeLocalizationUC; initialization publishes the available document and performs the startup Remote Config refresh
  • fails fast when required runtime localization state, supported languages, or localization keys are missing; Compose previews use inspection-only key rendering without a duplicate translation source
  • keeps QA on the Develop application ID/Firebase client and changes only the visible app name to ComposeScreenExample QA
  • keeps existing Android framework strings.xml resources separate; this PR does not generate Android strings.xml from the localization JSON
  • validates the FirebaseKit Android manifest path with :app:android:processDevelopDebugMainManifest and verifies Develop/QA/Stage/Production compilation plus Konsist/detekt

FirebaseKit Android namespace

Firebase-KMP-Kit 0.4.0 publishes its Android library modules with the shared com.firebasekit namespace. The project disables AGP unique-package-name validation for this dependency while retaining Firebase-KMP-Kit as the KMP Remote Config implementation. CI runs Android manifest processing to catch regressions in this integration.

Validation

Final validation is running on the current single-commit PR head. The workflow checks localization schema/publishing validation, QA reuse of the Develop Firebase client, localization/Desktop tests, Android manifest processing, all application environments, Konsist, and detekt.

The PR is maintained as exactly one commit.

@Velord
Velord force-pushed the feature/firebase-remote-localization branch 7 times, most recently from fdacd89 to 0c1854f Compare August 19, 2026 17:29
@Velord Velord changed the title Feature/firebase remote localization [Feature] Add Firebase Remote Config localization Aug 19, 2026
@Velord
Velord force-pushed the feature/firebase-remote-localization branch 9 times, most recently from dcc4225 to 4ae8998 Compare August 20, 2026 10:05
@Velord
Velord force-pushed the feature/firebase-remote-localization branch from 4ae8998 to 5a5478c Compare August 20, 2026 10:34
@Velord
Velord merged commit 0dae38b into develop Aug 20, 2026
0 of 2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant