BowlerKitBowlerKit
Features

Settings

10/11/2026

Local preferences, Account synchronization, and native settings screens.

Included screens

Both native apps include General, Appearance, Profile, Notifications, Security, Help Center, and About surfaces. General covers region, time zone, and language; Appearance exposes theme and display preferences. Account adds profile editing, connected accounts, password changes, sessions, login history, and account deletion.

Persistence and synchronization

PreferencesStore uses DataStore for non-secret local settings. ProductStore connects the native settings pages to ProductPreferenceSync.

Preference groupAccountGuest
Language, region, time zone, usage sharing, personalizationSaved locally and synchronized with /api/v1/app/preferencesSaved locally
Notification preferencesSaved locally and synchronized with /api/v1/app/notifications/preferencesSaved locally; selected preferences drive local reminders
Appearance/display choicesLocal preferencesLocal preferences

Network failures keep local settings usable. Pending Account changes are retried by the preference synchronization path. The Security screen includes biometric and two-factor controls as presentation placeholders; they do not implement biometric login or server two-factor enrollment.

Notifications and privacy

In Guest mode, only Tips & Updates schedules a daily reminder when the master switch is on; see Notifications. Ad consent and privacy options are handled by the native UMP gateways and shared ads state; see Payments and Ads.

Source map

Shared settings files are under sharedLogic/src/commonMain/kotlin/com/soewidiputra/kmponlate/: PreferencesStore.kt, ProductPreferenceSync.kt, ProductRegions.kt, and ProductStore.kt. Android pages are under sharedUI/src/androidMain/kotlin/com/soewidiputra/kmponlate/pages/; SwiftUI counterparts are under iosApp/iosApp/Pages/.

Keep behavior changes in shared stores and update both native screens. Verify saved choices after relaunch, offline Account edits and later synchronization, and Guest settings without any Account requests.