Skip to content

Repository files navigation

Magic Catalogs

Dependency versions for modern android applications

Publish

License

Artifact Version
magic Maven Central
androidx Maven Central

Example usage

settings.gradle.kts
pluginManagement {
    repositories {
        google()
        mavenCentral()
        gradlePluginPortal()
    }
}
dependencyResolutionManagement {
    repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
    repositories {
        mavenCentral()
        google()
    }

    versionCatalogs {
        val magicCatalogs: String by settings

        create("magic") {
            from("com.kroegerama.magic-catalogs:magic:$magicCatalogs")
        }
        create("androidx") {
            from("com.kroegerama.magic-catalogs:androidx:$magicCatalogs")
        }
    }
}

// [...] include projects
build.gradle.kts (root)
plugins {
    alias(magic.plugins.android.application) apply false
    alias(magic.plugins.android.library) apply false
    alias(magic.plugins.kotlin.android) apply false
    alias(magic.plugins.kotlin.kapt) apply false
    alias(magic.plugins.kotlin.parcelize) apply false
    alias(magic.plugins.kotlin.serialization) apply false

    alias(magic.plugins.hilt.android) apply false
    alias(magic.plugins.ksp) apply false

    alias(magic.plugins.grgit) apply false
    alias(magic.plugins.spotless) apply false
    
    alias(androidx.plugins.navigation.safeArgs) apply false
}
build.gradle.kts (module)
plugins {
    alias(magic.plugins.android.application)
    alias(magic.plugins.kotlin.android)
    alias(magic.plugins.kotlin.kapt)
    alias(magic.plugins.kotlin.parcelize)
    alias(magic.plugins.kotlin.serialization)

    alias(magic.plugins.hilt.android)
    alias(magic.plugins.ksp)

    alias(magic.plugins.grgit)
    alias(magic.plugins.spotless)

    alias(androidx.plugins.navigation.safeArgs)
}

// [...]

dependencies {
    implementation(magic.kotlin.stdlib.jdk8)
    implementation(magic.kotlinx.coroutines.android)
    implementation(magic.kotlinx.serialization.json)

    implementation(androidx.bundles.base)
    implementation(androidx.bundles.lifecycle)
    implementation(androidx.bundles.navigation)
    implementation(androidx.paging.runtime)
    implementation(androidx.work.runtime)

    implementation(androidx.room)
    ksp(androidx.room.compiler)
    implementation(androidx.room.paging)

    implementation(magic.hilt.android)
    kapt(magic.hilt.compiler)

    implementation(androidx.hilt.work)
    implementation(androidx.hilt.navigation.fragment)
    kapt(androidx.hilt.compiler)

    implementation(magic.material)

// [...]
}

About

Dependency versions for modern android applications

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages