Skip 2 months of setup.
Ship your KMP app today.
A production-tested Kotlin Multiplatform starter kit extracted from apps live in both app stores. Authentication, networking, database, CI/CD, and more — all wired up and ready to go.
$ git clone buildkmp/starter my-app
Cloning into 'my-app'...
$ cd my-app && ./setup.sh
Setting up iOS & Android targets...
Configuring dependencies...
Running initial build...
Ready to ship in 5 minutes.
Starting a KMP project shouldn't take 8 weeks
Every KMP developer hits the same walls. We spent 6 months figuring this out. You don't have to.
The Setup Tax
Gradle config, version catalogs, platform dependencies, build variants. 3-5 days before you write a single line of real code.
The Architecture Trap
Single shared module works for tutorials. At 10+ screens, build times explode and everything depends on everything.
The Firebase Maze
No official KMP SDK. Third-party wrappers, expect/actual patterns, platform-specific gotchas. 2-3 days per service.
Everything you need. Nothing you don't.
Firebase Auth
Google, Apple, Email sign-in. Both platforms.
Push Notifications
FCM with foreground, background, killed state handling.
Analytics + Crashlytics
One interface, tracks everywhere.
Ktor Networking
Token refresh, error handling, typed responses.
SQLDelight Database
Migrations, typed queries, offline support.
Design System
Components, theming, dark mode.
Voyager Navigation
Tab nav, deep linking, nested navigation.
CI/CD Pipeline
GitHub Actions + Fastlane to both stores.
Encryption
AES encryption layer for sensitive data.
Remote Config
Feature flags without app updates.
Force Update
Prompt users to update when needed.
Ktor Backend
API server with auth, ready to deploy.
Total: 112+ hours of development time saved.
The architecture that actually scales
Multi-module with API/Impl separation. Not a monolith stuffed into one folder.
// Everything knows about everything
class ProfileScreen {
val auth = FirebaseAuth.getInstance()
val db = SqlDriver.create()
val api = HttpClient()
}// Clean interfaces. Swap anything. class ProfileViewModel( private val auth: AuthRepository, private val api: ApiClient, private val db: ProfileDao )
feature/ feature-auth-api/ # Interface: AuthRepository, AuthState, User feature-auth-impl/ # Firebase implementation + ViewModel + Screen data/ data-network-api/ # Interface: ApiClient data-network-impl/ # Ktor implementation service/ service-push-api/ # Interface: PushNotificationService service-push-impl/ # FCM implementation
Add a feature in 15 minutes
Create 2 modules. No existing code touched.
Swap any dependency
Change Firebase to Supabase? Replace one module.
Test everything
No mocks needed. Just implement the interface.
From clone to running app in 5 minutes
No configuration hell. No guessing. Just build.
Clone
git clone buildkmp your-app-name
Configure
Add your Firebase config files
Run
Open in Android Studio, hit play
Ship
Push to main, CI/CD handles the rest
How BuildKMP compares
Side-by-side with every alternative.
| Feature | BuildKMP | KMPShip | KMPKit | From Scratch |
|---|---|---|---|---|
| Multi-module API/Impl | You decide | |||
| Firebase Auth | Passage | 4-5 days | ||
| Ktor Backend | 1-2 weeks | |||
| Push Notifications | 2-3 days | |||
| SQLDelight + Migrations | Room | Unknown | 2-3 days | |
| CI/CD (Fastlane) | Basic | Basic | 5-7 days | |
| Encryption | 1-2 days | |||
| Deep Linking | Unknown | 1-2 days | ||
| Force Update Flow | 1 day | |||
| Video Tutorials | N/A | |||
| Production App Behind It | Unknown | Unknown | N/A |
Built by a developer who ships KMP to production
I'm Mohammed, a Software Engineer at Meta with 11+ years of experience building products across medical, cloud, and social media domains. I built a Kotlin Multiplatform app that's live on both the App Store and Play Store.
After spending months setting up the project — Gradle config, Firebase integration, multi-module architecture, CI/CD pipelines — I realized every KMP developer goes through the same pain.
So I extracted everything into BuildKMP. Not a theoretical template. Not a todo app. The actual production architecture from a real app with real users.
Questions
Stop configuring. Start building.
Join developers who shipped their KMP app in days, not months.
Open source. Community-driven. Lifetime updates.