Skip to content

Arkitekt

A modern Android & Kotlin Multiplatform architecture library built on Jetpack Compose and Kotlin Coroutines.

Arkitekt gives you a solid, testable foundation for building Android and KMP applications. It provides two architecture paths with the same core principles:

  • Android / Compose — ViewModel + Hilt + Jetpack Compose
  • Decompose / KMP — BaseComponent + Koin + Kotlin Multiplatform

Key Features

  • Compose-ready ViewModels with built-in state management and one-shot events
  • Coroutine Use Cases for clean, testable business logic (UseCase and FlowUseCase)
  • Kotlin Multiplatform support via Decompose with Koin dependency injection
  • KSP Factory Generator for Decompose components (@GenerateFactory)
  • Result type for safe, composable error handling in coroutine chains
  • Testing utilities for mocking use cases and testing ViewModels

Quick Installation

dependencies {
    // Android / Compose
    implementation("app.futured.arkitekt:core:6.0.0-SNAPSHOT")
    implementation("app.futured.arkitekt:cr-usecases:6.0.0-SNAPSHOT")
    implementation("app.futured.arkitekt:compose:6.0.0-SNAPSHOT")

    // Decompose / KMP (optional)
    implementation("app.futured.arkitekt:decompose:6.0.0-SNAPSHOT")
    implementation("app.futured.arkitekt:decompose-annotation:6.0.0-SNAPSHOT")
    ksp("app.futured.arkitekt:decompose-processor:6.0.0-SNAPSHOT")
}

See Installation for full details and snapshot builds.


Get Started

Android / Compose

Set up a Jetpack Compose project with ViewModel, ViewState, and Hilt.

Project Setup Quick Start

Decompose / KMP

Set up a Kotlin Multiplatform project with BaseComponent, Koin, and Decompose.

Project Setup Quick Start