BuildKMP
Built from a production app in both stores

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.

terminal

$ 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.

16h saved

Firebase Auth

Google, Apple, Email sign-in. Both platforms.

8h saved

Push Notifications

FCM with foreground, background, killed state handling.

6h saved

Analytics + Crashlytics

One interface, tracks everywhere.

6h saved

Ktor Networking

Token refresh, error handling, typed responses.

12h saved

SQLDelight Database

Migrations, typed queries, offline support.

12h saved

Design System

Components, theming, dark mode.

6h saved

Voyager Navigation

Tab nav, deep linking, nested navigation.

20h saved

CI/CD Pipeline

GitHub Actions + Fastlane to both stores.

4h saved

Encryption

AES encryption layer for sensitive data.

4h saved

Remote Config

Feature flags without app updates.

2h saved

Force Update

Prompt users to update when needed.

16h saved

Ktor Backend

API server with auth, ready to deploy.

Total: 112+ hours of development time saved.

Kotlin MultiplatformCompose MultiplatformFirebaseKtorKoinVoyagerSQLDelight

The architecture that actually scales

Multi-module with API/Impl separation. Not a monolith stuffed into one folder.

BuildKMP MVI Data Flow Diagram
Other boilerplates
// Everything knows about everything
class ProfileScreen {
  val auth = FirebaseAuth.getInstance()
  val db = SqlDriver.create()
  val api = HttpClient()
}
BuildKMP
// Clean interfaces. Swap anything.
class ProfileViewModel(
  private val auth: AuthRepository,
  private val api: ApiClient,
  private val db: ProfileDao
)
Project Structure
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.

01

Clone

git clone buildkmp your-app-name

02

Configure

Add your Firebase config files

03

Run

Open in Android Studio, hit play

04

Ship

Push to main, CI/CD handles the rest

How BuildKMP compares

Side-by-side with every alternative.

FeatureBuildKMPKMPShipKMPKitFrom Scratch
Multi-module API/ImplYou decide
Firebase AuthPassage4-5 days
Ktor Backend1-2 weeks
Push Notifications2-3 days
SQLDelight + MigrationsRoomUnknown2-3 days
CI/CD (Fastlane)BasicBasic5-7 days
Encryption1-2 days
Deep LinkingUnknown1-2 days
Force Update Flow1 day
Video TutorialsN/A
Production App Behind ItUnknownUnknownN/A

Built by a developer who ships KMP to production

M

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.