Skip to content

Downloads

Latest version

Maven Central

Repository

repositories {
    mavenCentral()
}

Appyx Navigation

Adding the gradle dependency in a non-multiplatform project:

dependencies {
    // Platform-specific (pick the right one for your platform)
    implementation("com.bumble.appyx:appyx-navigation-android:$version")
    implementation("com.bumble.appyx:appyx-navigation-desktop:$version")
    implementation("com.bumble.appyx:appyx-navigation-js:$version")

    // For iOS, you need separate dependencies for Simulator, x86 & Arm
    implementation("com.bumble.appyx:appyx-navigation-iossimulatorarm64:$version")
    implementation("com.bumble.appyx:appyx-navigation-iosx64:$version")
    implementation("com.bumble.appyx:appyx-navigation-iosarm64:$version")
}

Adding the gradle dependency in a multiplatform project:

kotlin {
    sourceSets {
        val commonMain by getting {
            dependencies {
                implementation("com.bumble.appyx:appyx-navigation:$version")
            }
        }
    }
}

Appyx Interactions

Adding the gradle dependency in a non-multiplatform project:

dependencies {
    // Platform-specific (pick the right one for your platform)
    implementation("com.bumble.appyx:appyx-interactions-android:$version")
    implementation("com.bumble.appyx:appyx-interactions-desktop:$version")
    implementation("com.bumble.appyx:appyx-interactions-js:$version")

    // For iOS, you need separate dependencies for Simulator, x86 & Arm
    implementation("com.bumble.appyx:appyx-interactions-iossimulatorarm64:$version")
    implementation("com.bumble.appyx:appyx-interactions-iosx64:$version")
    implementation("com.bumble.appyx:appyx-interactions-iosarm64:$version")
}

Adding the gradle dependency in a multiplatform project:

kotlin {
    sourceSets {
        val commonMain by getting {
            dependencies {
                implementation("com.bumble.appyx:appyx-interactions:$version")
            }
        }
    }
}

Appyx Components

Back stack

Adding the gradle dependency in a non-multiplatform project:

dependencies {
    // Platform-specific (pick the right one for your platform)
    implementation("com.bumble.appyx:backstack-android:$version")
    implementation("com.bumble.appyx:backstack-desktop:$version")
    implementation("com.bumble.appyx:backstack-js:$version")

    // For iOS, you need separate dependencies for Simulator, x86 & Arm
    implementation("com.bumble.appyx:backstack-iossimulatorarm64:$version")
    implementation("com.bumble.appyx:backstack-iosx64:$version")
    implementation("com.bumble.appyx:backstack-iosarm64:$version")
}

Adding the gradle dependency in a multiplatform project:

kotlin {
    sourceSets {
        val commonMain by getting {
            dependencies {
                // Use api, not implementation!
                api("com.bumble.appyx:backstack:$version")
            }
        }

    }
}

Spotlight

Adding the gradle dependency in a non-multiplatform project:

dependencies {
    // Platform-specific (pick the right one for your platform)
    implementation("com.bumble.appyx:spotlight-android:$version")
    implementation("com.bumble.appyx:spotlight-desktop:$version")
    implementation("com.bumble.appyx:spotlight-js:$version")

    // For iOS, you need separate dependencies for Simulator, x86 & Arm
    implementation("com.bumble.appyx:spotlight-iossimulatorarm64:$version")
    implementation("com.bumble.appyx:spotlight-iosx64:$version")
    implementation("com.bumble.appyx:spotlight-iosarm64:$version")
}

Adding the gradle dependency in a multiplatform project:

kotlin {
    sourceSets {
        val commonMain by getting {
            dependencies {
                // Use api, not implementation!
                api("com.bumble.appyx:spotlight:$version")
            }
        }

    }
}

Utils and interop with other libraries

Material 3 support

Support for Navigation bar, Navigation rail to use easily together with Appyx Navigation.

See more in Material 3 support.

Adding the gradle dependency in a non-multiplatform project:

dependencies {
    // Platform-specific (pick the right one for your platform)
    implementation("com.bumble.appyx:utils-material3-android:$version")
    implementation("com.bumble.appyx:utils-material3-desktop:$version")
    implementation("com.bumble.appyx:utils-material3-js:$version")
    implementation("com.bumble.appyx:utils-material3-iosarm64:$version")
    implementation("com.bumble.appyx:utils-material3-iossimulatorarm64:$version")
    implementation("com.bumble.appyx:utils-material3-iosx64:$version")
}

Adding the gradle dependency in a multiplatform project:

kotlin {
    sourceSets {
        val commonMain by getting {
            dependencies {
                // Use api, not implementation!
                api("com.bumble.appyx:utils-material3:$version")
            }
        }
    }
}

RxJava 2

dependencies {
    // Optional support for RxJava 2/3
    implementation("com.bumble.appyx:utils-interop-rx2:$version")
}

RxJava 3

dependencies {
    implementation("com.bumble.appyx:utils-interop-rx3:$version")
}

badoo/RIBs

repositories {
    // Don't forget to add this, since badoo/RIBs is hosted on jitpack:
    maven(url = "https://jitpack.io")
}

dependencies {
    implementation("com.bumble.appyx:utils-interop-ribs:$version")
}

RIBs like helpers

Adds client code helper classes like Builder, SimpleBuilder, and Interactor

dependencies {
    implementation("com.bumble.appyx:utils-ribs-helpers:$version")
}

Testing

// Test rules and utility classes for testing on Android
debugImplementation("com.bumble.appyx:utils-testing-ui-activity:$version")
androidTestImplementation("com.bumble.appyx:utils-testing-ui:$version")

// Utility classes for unit testing
testImplementation("com.bumble.appyx:utils-testing-unit-common:$version")

// Test rules and utility classes for unit testing using JUnit4
testImplementation("com.bumble.appyx:utils-testing-junit4:$version")

// Test extensions and utility classes for unit testing using JUnit5
testImplementation("com.bumble.appyx:utils-testing-junit5:$version")