Source: https://seerepo.com/r/libre-tube/LibreTube/built
Markdown source: https://seerepo.com/r/libre-tube/LibreTube/built.md
Description: LibreTube is a Kotlin repo built with androidx.core:core, androidx.fragment:fragment-ktx, androidx.activity:activity-ktx, lifecycle-livedata-ktx,…

# What is LibreTube built with?

LibreTube is a Kotlin repo built with androidx.core:core, androidx.fragment:fragment-ktx, androidx.activity:activity-ktx, lifecycle-livedata-ktx, lifecycle-runtime-ktx, and 3 more. It stores its data in androidx.paging:paging-runtime-ktx, reaches it with room-ktx, makes its content with coil and androidx.documentfile:documentfile, and is tested with espresso-core, junit:junit, androidx.benchmark:benchmark-macro-junit4, androidx.test.ext:junit, and androidx.test.uiautomator:uiautomator. It has 38,219 written lines, with 3 test files.

Read on November 10, 2026, at commit 58592a1.

Repository: https://github.com/libre-tube/LibreTube

## Frontend

### The base

- **[androidx.core:core](https://seerepo.com/uses/androidxcore-core)**: 130 files
- **androidx.fragment:fragment-ktx**: 61 files
- **androidx.activity:activity-ktx**: 12 files

### Interface

- **[core-splashscreen](https://seerepo.com/uses/core-splashscreen)**
- **[Google](https://seerepo.com/uses/google)**: 58 files
- **androidx.preference:preference-ktx**: 16 files
- **[androidx.appcompat:appcompat](https://seerepo.com/uses/androidxappcompat-appcompat)**: 13 files
- **androidx.constraintlayout:constraintlayout**: 6 files
- **androidx.media3:media3-ui**: 5 files
- **androidx.swiperefreshlayout:swiperefreshlayout**: 1 file

## Backend

### Data

- **androidx.paging:paging-runtime-ktx**: 13 files

### Data access

- **[room-ktx](https://seerepo.com/uses/room-ktx)**

## Support

### The base

- **lifecycle-livedata-ktx**
- **[lifecycle-runtime-ktx](https://seerepo.com/uses/lifecycle-runtime-ktx)**
- **lifecycle-service**
- **navigation-fragment-ktx**
- **navigation-ui-ktx**

### Content

- **coil**
- **androidx.documentfile:documentfile**: 1 file

### Testing

- **espresso-core**
- **junit:junit**: 5 files
- **androidx.benchmark:benchmark-macro-junit4**: 2 files
- **androidx.test.ext:junit**: 2 files
- **androidx.test.uiautomator:uiautomator**: 1 file

### Tools

- **profileinstaller**
- **room-compiler**
- **com.google.protobuf:protoc**: 1 file

### Other

- **coil-network-okhttp**
- **converter-kotlinx-serialization**
- **desugar_jdk_libs_nio**
- **[JetBrains](https://seerepo.com/uses/jetbrains)**
- **kotlinx-serialization-json**
- **lifecycle-viewmodel-ktx**
- **logging-interceptor**
- **media**
- **media3-exoplayer-dash**
- **media3-exoplayer-hls**
- **retrofit**
- **androidx.media3:media3-exoplayer**: 13 files
- **androidx.media3:media3-session**: 8 files
- **androidx.work:work-runtime-ktx**: 5 files
- **androidx.collection:collection**: 1 file
- **androidx.media3:media3-transformer**: 1 file

## Other repos with a similar stack

- [flutter/samples](https://seerepo.com/r/flutter/samples/built): androidx.core:core, androidx.activity:activity-ktx, lifecycle-livedata-ktx, navigation-fragment-ktx, navigation-ui-ktx, core-splashscreen, Google, androidx.appcompat:appcompat, androidx.constraintlayout:constraintlayout · [Compare](https://seerepo.com/compare/flutter/samples/vs/libre-tube/LibreTube)
- [microg/GmsCore](https://seerepo.com/r/microg/GmsCore/built): androidx.core:core, lifecycle-livedata-ktx, lifecycle-runtime-ktx, lifecycle-service, navigation-fragment-ktx, navigation-ui-ktx, Google, androidx.appcompat:appcompat · [Compare](https://seerepo.com/compare/libre-tube/LibreTube/vs/microg/GmsCore)
- [thunderbird/thunderbird-android](https://seerepo.com/r/thunderbird/thunderbird-android/built): androidx.core:core, lifecycle-livedata-ktx, lifecycle-runtime-ktx, core-splashscreen, Google, androidx.appcompat:appcompat, androidx.constraintlayout:constraintlayout, androidx.swiperefreshlayout:swiperefreshlayout · [Compare](https://seerepo.com/compare/libre-tube/LibreTube/vs/thunderbird/thunderbird-android)
- [signalapp/Signal-Android](https://seerepo.com/r/signalapp/Signal-Android/built): lifecycle-livedata-ktx, navigation-fragment-ktx, navigation-ui-ktx, Google, androidx.appcompat:appcompat, androidx.constraintlayout:constraintlayout, androidx.media3:media3-ui · [Compare](https://seerepo.com/compare/libre-tube/LibreTube/vs/signalapp/Signal-Android)
- [TeamNewPipe/NewPipe](https://seerepo.com/r/TeamNewPipe/NewPipe/built): lifecycle-livedata-ktx, Google, androidx.appcompat:appcompat, androidx.constraintlayout:constraintlayout, androidx.documentfile:documentfile · [Compare](https://seerepo.com/compare/libre-tube/LibreTube/vs/TeamNewPipe/NewPipe)
- [android/architecture-samples](https://seerepo.com/r/android/architecture-samples/built): lifecycle-livedata-ktx, core-splashscreen, room-ktx, coil · [Compare](https://seerepo.com/compare/android/architecture-samples/vs/libre-tube/LibreTube)

## Frequently asked questions

### What language is LibreTube written in?

LibreTube is written in Kotlin, with 38,219 written lines.

### What framework does LibreTube use?

LibreTube is built with androidx.core:core, androidx.fragment:fragment-ktx, androidx.activity:activity-ktx, lifecycle-livedata-ktx, lifecycle-runtime-ktx, lifecycle-service, navigation-fragment-ktx, and navigation-ui-ktx.

### What database does LibreTube use?

LibreTube stores its data in androidx.paging:paging-runtime-ktx and reaches it with room-ktx.

### Does LibreTube have tests?

Yes. LibreTube has 3 test files and is tested with espresso-core, junit:junit, androidx.benchmark:benchmark-macro-junit4, androidx.test.ext:junit, and androidx.test.uiautomator:uiautomator.

### Which repos have a stack like LibreTube's?

The ones that share most of its stack: flutter/samples, microg/GmsCore, and thunderbird/thunderbird-android.

## What is your repo built with?

Any public repo, with no account: https://seerepo.com/r/owner/repo/built, with the owner and name it has on GitHub.
