https://github.com/mikepenz/aboutlibraries
AboutLibraries automatically collects all dependencies and licenses of any gradle project (Kotlin MultiPlatform), and provides easy to integrate UI components for Android and Compose Multiplatform environments
https://github.com/mikepenz/aboutlibraries
aboutlibraries android android-development android-library android-ui cmp compose compose-multiplatform fragments kmp kmp-library kotlin kotlin-multiplatform kotlin-multiplatform-library libraries mikepenz multiplatform wasm
Last synced: about 1 month ago
JSON representation
AboutLibraries automatically collects all dependencies and licenses of any gradle project (Kotlin MultiPlatform), and provides easy to integrate UI components for Android and Compose Multiplatform environments
- Host: GitHub
- URL: https://github.com/mikepenz/aboutlibraries
- Owner: mikepenz
- License: apache-2.0
- Created: 2014-04-22T10:01:06.000Z (about 12 years ago)
- Default Branch: develop
- Last Pushed: 2026-04-07T09:19:58.000Z (about 2 months ago)
- Last Synced: 2026-04-07T09:27:20.988Z (about 2 months ago)
- Topics: aboutlibraries, android, android-development, android-library, android-ui, cmp, compose, compose-multiplatform, fragments, kmp, kmp-library, kotlin, kotlin-multiplatform, kotlin-multiplatform-library, libraries, mikepenz, multiplatform, wasm
- Language: Kotlin
- Homepage: http://mikepenz.github.io/AboutLibraries/
- Size: 17.3 MB
- Stars: 4,261
- Watchers: 133
- Forks: 549
- Open Issues: 11
-
Metadata Files:
- Readme: README-DEPRECATED.md
- Funding: .github/FUNDING.yml
- License: LICENSE
- Security: SECURITY.md
Awesome Lists containing this project
README
# Deprecated APIs
## (Legacy) UI-module (View-based)
> [!WARNING]
> **Deprecated:** The legacy View-based UI module (`com.mikepenz:aboutlibraries`) is deprecated and will receive limited support.
> Please migrate to the [Compose UI module](#ui-module-compose).
> For embedding Compose in Views, consider using [ComposeView](https://developer.android.com/develop/ui/compose/migrate/interoperability-apis/compose-in-views).
> While newer Gradle plugin versions *might* be compatible with older UI modules regarding the data format, migration is strongly recommended.
```gradle
// build.gradle.kts
// Recommended: Using version catalog
implementation(libs.aboutlibraries.view)
// Alternative: Direct dependency declaration
// implementation("com.mikepenz:aboutlibraries:${latestAboutLibsRelease}")
```
### Usage
Use this library in a few different ways. Create a custom activity, including a custom style or just
use its generated information. Or simply use the built-in Activity or Fragment and just pass the
libs to include.
> **Note**: The new version requires the new Material3 theme as base.
#### Activity
```kotlin
LibsBuilder()
.start(this) // start the activity
```
The activity uses a toolbar, which requires the appropriate theme.
See [Style the AboutLibraries](#style-the-aboutlibraries-%EF%B8%8F) for more details
#### Fragment
```kotlin
val fragment = LibsBuilder()
.supportFragment()
```
#### About this App UI
The `AboutLibraries` library also offers the ability to create an `About this app` screen.
Add the following .xml file (or just the strings - the key must be the same) to the project.
```xml
true
true
Place the description here :D
```
or use the builder and add following:
```kotlin
.withAboutIconShown(true)
.withAboutVersionShown(true)
.withAboutDescription("This is a small sample which can be set in the about my app description file.
Style this with html markup :D")
```
#### Style the AboutLibraries 🖌️
Create a custom style for the AboutLibraries UI.
```xml
// define a custom style
<!-- AboutLibraries specific values -->
<item name="aboutLibrariesCardBackground">?cardBackgroundColor</item>
<item name="aboutLibrariesDescriptionTitle">?android:textColorPrimary</item>
<item name="aboutLibrariesDescriptionText">?android:textColorSecondary</item>
<item name="aboutLibrariesDescriptionDivider">@color/opensource_divider</item>
<item name="aboutLibrariesOpenSourceTitle">?android:textColorPrimary</item>
<item name="aboutLibrariesOpenSourceText">?android:textColorSecondary</item>
<item name="aboutLibrariesSpecialButtonText">?android:textColorPrimary</item>
<item name="aboutLibrariesOpenSourceDivider">@color/opensource_divider</item>
// define the custom styles for the theme
...
<item name="aboutLibrariesStyle">@style/CustomAboutLibrariesStyle</item>
...
```