Documentation

Complete guide to getting started with KMP Kit and building your mobile app.

Getting Started

Welcome to KMP Kit! This guide will help you set up and start building your mobile app with our production-ready boilerplate.

Prerequisites

Before you begin, make sure you have the following installed: • Android Studio Hedgehog or later • Xcode 15.0 or later (for iOS development) • Kotlin 1.9.0 or later • JDK 17 or later You'll also need accounts for: • Firebase (for authentication and notifications) • RevenueCat (for payments, if using Scale plan) • GitHub (for CI/CD)

Installation

1. Clone or download the boilerplate from your purchase 2. Open the project in Android Studio 3. Sync Gradle files 4. Configure your Firebase project 5. Set up your environment variables 6. Run the app on your preferred platform

Project Structure

The boilerplate follows a clean architecture pattern: • `commonMain`: Shared business logic and data models • `androidMain`: Android-specific implementations • `iosMain`: iOS-specific implementations • `composeApp`: UI layer using Compose Multiplatform Each module is organized by feature, making it easy to navigate and extend.

Authentication

KMP Kit includes production-ready authentication with multiple providers.

Setting Up Authentication

1. Configure Firebase Authentication in your Firebase console 2. Enable the providers you want to use (Apple, Google, Email) 3. Add your OAuth credentials 4. The boilerplate handles the rest automatically

Using Authentication

The authentication flow is already implemented. Simply use the provided authentication service to sign in, sign up, or sign out. The app will automatically handle session management and token refresh.

Payments

Integrate in-app purchases and subscriptions with RevenueCat.

RevenueCat Setup

1. Create a RevenueCat account 2. Configure your products and subscriptions 3. Add your API keys to the project 4. The boilerplate includes ready-to-use paywall components

Testing Purchases

Use RevenueCat's sandbox environment to test purchases. Make sure to configure test products in your RevenueCat dashboard before testing.

Notifications

Keep your users engaged with push and local notifications.

Push Notifications

Push notifications are configured through Firebase Cloud Messaging. The boilerplate handles registration, token management, and notification display automatically.

Local Notifications

Schedule local notifications using the provided notification service. Perfect for reminders, updates, and user engagement.

Navigation

Type-safe navigation with deep linking support.

Navigation Setup

The boilerplate uses a type-safe navigation system. Define your routes in the navigation configuration, and the system handles routing, deep linking, and state management automatically.

Deep Linking

Deep links are automatically handled. Configure your URL schemes in the platform-specific configuration files, and the navigation system will route users to the correct screen.

CI/CD

Automated testing and deployment workflows.

GitHub Actions

The boilerplate includes pre-configured GitHub Actions workflows for: • Running tests on pull requests • Building release versions • Automatically deploying to App Store and Play Store Configure your secrets in GitHub, and the workflows will handle the rest.

App Store Deployment

The CI/CD pipeline can automatically build and submit your app to the App Store. Configure your App Store Connect API key in GitHub secrets.

Play Store Deployment

Similarly, the pipeline can deploy to Google Play Store. Set up your Play Store service account credentials in GitHub secrets.

Customization

Make the boilerplate your own.

Design System

Customize colors, typography, and components in the design system configuration. All components use the design system, so changes propagate throughout the app.

Adding Features

The boilerplate is designed to be extended. Follow the existing patterns to add new features, screens, and functionality. The architecture makes it easy to add new modules without breaking existing code.

Support

Need help? We're here for you.

Getting Help

If you're on the MVP or Scale plan, you can reach out via email or Discord for support. We typically respond within 24-48 hours.

Common Issues

Check our FAQ section for answers to common questions. Most setup issues are related to Firebase or RevenueCat configuration.