Skip to content

Repository files navigation

PlayTube Icon

PlayTube

A fast, private, and feature-rich YouTube client for Android

No ads · No tracking · No data collection

PlayTube Feature Graphic

Latest Release GitHub Stars GitHub Forks License Android API 24+ Kotlin

Total Downloads


Get it on GitHub



Get it on F-Droid



Get Updates via Obtainium

Use Obtainium to receive updates directly from PlayTube's GitHub releases.


Features

  • Fluid Glass UI: A modern, dynamic, and smooth full-screen browsing experience.
  • Background Playback: Continue listening with full media controls.
  • Picture-in-Picture: Watch videos while using other apps.
  • Comments and Replies: Browse comments and view replies.
  • Multi-language Subtitles: Watch content with subtitle support.
  • Incognito Mode: Browse without affecting personalized recommendations.
  • High-Quality Downloads: Download supported content in high quality.
  • Gesture Controls: Control brightness, volume, and playback with gestures.
  • Orientation Controls: Easily switch between portrait and landscape modes.
  • Subscription Management: Subscribe to and manage channels without a Google account.
  • Privacy First: No ads, tracking, or unnecessary data collection.

Personalized Recommendations

PlayTube includes a lightweight recommendation system that learns from user activity to provide more relevant video suggestions.

Recommendation learning can be paused, and learned data can be cleared at any time from the app settings.


Screenshots

Home Screen   Player Screen   Library Screen   Subscriptions Screen   Settings Screen   Search Screen

Technology Stack

Category Technology Description
Architecture MVVM Model-View-ViewModel architecture
Clean Architecture Separation between Domain, Data, and UI layers
Repository Pattern Centralized data access and management
Kotlin and Reactive Kotlin Coroutines Asynchronous and background operations
StateFlow Reactive UI state management
UI Jetpack Compose Modern declarative Android UI
Material Design 3 Modern components and dynamic theming
Compose Animations Smooth transitions and UI animations
Storage Room Database Local storage for user metadata
Jetpack DataStore User preferences and application settings
Media and Networking AndroidX Media3 Video and audio playback
Coil 3 Image loading and caching
NewPipeExtractor Stream and metadata extraction
OkHttp HTTP networking
Background and DI Hilt (Dagger) Dependency injection
WorkManager Reliable background tasks and downloads
Build Tools KSP Kotlin Symbol Processing
Version Catalogs Centralized dependency and version management

Acknowledgements

PlayTube would not have been possible without the work of the open-source community. Special thanks to:

  • NewPipe
  • NewPipe Extractor
  • LibreTube
  • PipePipe
  • Flow

Important Notice

Warning

Publishing this application on the Google Play Store may violate Google's policies and/or the platform's terms of service. Always review the applicable policies and terms before distributing the application.


License and Code Usage

PlayTube is licensed under the GNU General Public License v3.0 (GPL-3.0).

You are free to:

  • Use the source code.
  • Study how the application works.
  • Modify the source code.
  • Fork the project.
  • Redistribute copies of the project.

If You Modify or Redistribute PlayTube

When distributing a modified or derivative version of PlayTube, you must comply with the GPL-3.0 license.

This includes:

  • Keeping GPL-covered code under the GPL-3.0 license.
  • Providing the corresponding source code when required by the license.
  • Preserving applicable copyright and license notices.
  • Making GPL-covered source code available to recipients under GPL-3.0.
  • Clearly documenting significant changes made to the original code.

For the complete license terms, see the LICENSE file.


Support PlayTube

If you enjoy using PlayTube and would like to support its continued development, consider becoming a patron.

Your support helps with continued development, maintenance, bug fixes, and future improvements.


If you enjoy PlayTube, consider giving the project a star

It helps more people discover the project and supports its continued development.

Releases

Packages

Contributors

Languages