Skip to main content
Version: 0.12.0

Configuration

Gradle

The simple way to apply Tangle is to just apply the gradle plugin. It will automatically add the dependencies and perform some basic validation of your module's configuration.

You can also just add dependencies yourself, without applying the plugin.

Note that Tangle is specifically for Android and has Android-specific dependencies, so it should only be added to Android modules.

// settings.gradle.kts

pluginManagement {
repositories {
gradlePluginPortal()
}
}
// top-level build.gradle.kts

plugins {
id("com.rickbusarow.tangle") version "0.12.0"
}
// any Android module's build.gradle.kts

plugins {
id("android-library") // or application, etc.
kotlin("android")
id("com.squareup.anvil")
id("com.rickbusarow.tangle")
}

// optional
tangle {
fragmentsEnabled = true // default is true
workEnabled = true // default is true

viewModelOptions {
enabled = true // default is true
activitiesEnabled = true // default is true
composeEnabled = true // default is false
fragmentsEnabled = true // default is true
}
}

Setting up the Tangle graph

In order to connect Tangle to your application-scoped Dagger component, call TangleGraph.init(...) immediately after creating the component.

import android.app.Application
import tangle.inject.TangleGraph

class MyApplication : Application() {

override fun onCreate() {
super.onCreate()

val myAppComponent = DaggerMyAppComponent.factory()
.create(this)

TangleGraph.init(myAppComponent)
}
}

Next steps

Tangle is now able to generate its code and hook in to Dagger.

Check out these features to start using Tangle in your project: