AboutLibraries

repository·develop·Indexed 26 days ago

https://github.com/mikepenz/aboutlibraries

A tool for collecting dependency and license metadata at compile time with no runtime overhead. It provides a core module for programmatic access to library data and Compose UI modules (supporting Material 2 and Material 3) to display this information in Android and Multiplatform applications. Includes Gradle plugins for manual or automatic metadata generation and support for custom JSON overrides for library and license details.

Tokens
6.7K
Snippets
26
Records
41
Agent score
88%

What's inside AboutLibraries

  1. Run the sample iOS app

    develop

    To run the iOS application, follow these steps:

    1. Set up a Kotlin Multiplatform environment.
    2. Install the Kotlin Multiplatform Mobile plugin.
    3. Open the project in IntelliJ IDEA or Android Studio.
    4. Add a new run configuration for the iOS Application.
    5. Run the iOS Application.
  2. Provide funding information

    develop

    You can add or override funding details for libraries using two methods:

    1. Manual: Place a funding.json file in the funding directory within your configured configPath.
    2. Automatic: Use the exportFunding Gradle task to generate this data automatically. To use this method, you must provide a GitHub API Key.

    Note: The exportFunding task will overwrite the existing file if it already exists.

    ./gradlew app:exportFunding
  3. Generate dependency information for the sample app

    develop

    To export library definitions for the different platforms in the sample project, run the following Gradle tasks for the shared, desktop, and web modules:

    ./gradlew :sample:shared:exportLibraryDefinitions
    ./gradlew :sample:desktop:exportLibraryDefinitions
    ./gradlew :sample:web:exportLibraryDefinitions
  4. Include AboutLibraries Compose UI modules

    develop

    For Jetpack Compose applications, include the appropriate Material 2 or Material 3 UI modules in your build.gradle.kts file.

    // build.gradle.kts
    // Recommended: Using version catalog (choose M2 or M3, or both)
    implementation(libs.aboutlibraries.compose.m2) // Material 2
    implementation(libs.aboutlibraries.compose.m3) // Material 3
    
    // Alternative: Direct dependency declaration
    // implementation("com.mikepenz:aboutlibraries-compose:${latestAboutLibsRelease}") // Material 2
    // implementation("com.mikepenz:aboutlibraries-compose-m3:${latestAboutLibsRelease}") // Material 3
  5. Install the AboutLibraries Android Plugin

    develop

    If you are developing an Android project and want library definitions to be automatically generated as part of the Android build process, use the Android-specific plugin. This plugin automatically hooks into the build, includes the generated file in Android resources, and requires no manual task execution.

    // Root build.gradle.kts
    id("com.mikepenz.aboutlibraries.plugin.android") version "${latestAboutLibsRelease}" apply false
    
    // App build.gradle.kts
    id("com.mikepenz.aboutlibraries.plugin.android")