Build Android & iOS Apps Faster with KMPShip: A Kotlin Multiplatform Boilerplate for Indie Devs
Over the past few years, Kotlin Multiplatform has grown into a powerful solution for building cross-platform apps. But if you’ve ever tried starting a new KMP project, you know how much setup it takes: authentication flows, payments, CI/CD, store publishing, in-app reviews, remote config… The list goes on.
After repeating the same setup across multiple projects, I finally decided to build a boilerplate that solves all of this. It’s called KMPShip, and it’s now available.
Why I Built KMPShip
As an indie developer, my time is limited. Every time I kicked off a new project, I found myself spending days (sometimes weeks) integrating Firebase Auth, configuring payments with RevenueCat, setting up CI/CD for App Store and Google Play, or configuring push notifications.
Eventually, it hit me: “Why not create a production-ready boilerplate I can reuse, and that other devs can use too?” That’s how KMPShip was born.
I even used it to create my own app, Bloomeo, which is live on the App Store and Google Play. Building with KMPShip allowed me to ship faster and focus on product features instead of wiring up the same integrations again.
What’s Included in KMPShip?
KMPShip is a Kotlin Multiplatform + Compose Multiplatform boilerplate that helps you ship Android & iOS apps faster. It’s perfect for solo devs, indie makers, and startups.
🔐 Authentication
- Google, Apple, and Email/Password
- Built using Passage, my KMP library for authentication via Firebase Auth
💳 Payments
- In-app purchases with RevenueCat
- Subscription support
🔔 Notifications
- Local and push notifications
- Powered by Alarmee, my KMP library for alarms and scheduling
📝 In-App Reviews
- Trigger store-compliant reviews with a few lines of code
⚙️ Remote Config
- Firebase Remote Config support to dynamically tweak your app behavior (Feature Flags & App Configuration Parameters)
🚀 CI/CD Setup
- Preconfigured GitHub Actions to publish your app to the App Store via Fastlane and Google Play with a single release tag
Built on Clean Architecture
KMPShip is designed with Clean Architecture principles in mind. The shared
module is organized into well-separated layers for data
, domain
, and presentation
, making it easier to scale and maintain your codebase over time.
Additional Highlights
KMPShip also comes with:
- Dependency injection using Koin
- Networking setup with Ktor
- Image loading with Coil
- A UI layer built with Compose Multiplatform and styled using Czan, my open-source atomic design system
Who Is KMPShip For?
If you’re any of the following:
- 🧑💻 A solo or indie dev tired of setting up projects from scratch
- 🚀 A startup founder looking to launch your MVP fast
- 🛠️ A developer wanting to explore Kotlin Multiplatform without the boilerplate pain
Then shared
is made for you.
You can build virtually any kind of mobile app with it: AI wrappers, personal finance tools, news apps, paid products — you name it.
What’s Next?
I’ve got tons of ideas in the pipeline: new features, integrations, and launchers to make development even faster. But more on that soon.
Thanks for reading, and happy shipping!