KeepSafe is a personal family member management system built with Kotlin Multiplatform and Compose Multiplatform.
It helps you securely organize and manage family records using a shared UI across platforms, with Firebase support on Android.
⚠️ Intended for personal use. Anyone interested can fork the project, configure Firebase, and compile their own version.
- 📱 Android - full functionality with Firebase
- 🖥️ Desktop (JVM) - shared UI preview
- 🍎 iOS - entry point included (requires macOS)
- 🔄 Shared Compose UI & business logic
- ☁️ Firebase integration (Android)
| Platform | Status | Notes |
|---|---|---|
| 📱 Android | ✅ Full support | Firebase SDK available |
| 🖥️ Desktop | 🟡 UI only | Firebase not supported |
| 🍎 iOS | Requires macOS & Xcode |
iOS builds cannot be tested on Windows environments.
- 🧩 Kotlin Multiplatform
- 🎨 Compose Multiplatform
- ⚙️ Gradle 9
- ☁️ Firebase (Android)
root
├── androidApp 📱 Android application
├── composeApp 🔄 Shared multiplatform module
├── iosApp 🍎 iOS entry point
├── build.gradle.kts
└── settings.gradle.kts
composeApp/src
├── commonMain 🔄 Shared UI & logic
├── androidMain 📱 Android-specific code
├── iosMain 🍎 iOS-specific code
└── desktopMain 🖥️ Desktop-specific code
- 🔄 commonMain → shared UI, models, business logic
- 📱 androidMain → Firebase & Android integrations
- 🍎 iosMain → Apple APIs & platform code
- 🖥️ desktopMain → desktop-only implementations
Windows
.\gradlew.bat :androidApp:assembleDebugmacOS/Linux
./gradlew :androidApp:assembleDebugWindows
.\gradlew.bat :composeApp:runmacOS/Linux
./gradlew :composeApp:run
⚠️ Requires macOS and Xcode.
- Open
/iosAppin Xcode - Build and run the project
To enable Firebase:
-
Create a Firebase project
-
Add configuration files:
androidApp/google-services.jsoniosApp/GoogleService-Info.plist
-
Rebuild the project
- 🏠 Designed for personal/family use
- 🖥️ Desktop version is for UI preview only
- 🍎 iOS support included but untested on Windows
- 🔐 Users must provide their own Firebase configuration
🔗 Kotlin Multiplatform https://www.jetbrains.com/help/kotlin-multiplatform-dev/get-started.html