Warning
This project is currently under construction. Features are being actively developed, and some parts of the codebase might be unstable.
Important
Disclaimer: IPTVMine Pro App does not host, store, or provide any media content. It is not affiliated with or connected to any external providers or extensions. All content accessed through the app is managed and sourced directly by the user via third-party tools or integrations. IPTVMine Pro has no control over it.
IPTVMine Pro is a premium, versatile, and high-performance Android IPTV application built with modern Android development paradigms. It enables users to stream Live TV, Movies, and TV Shows by integrating standard M3U playlists and advanced Vega-compatible JavaScript/TypeScript provider extensions.
The project is structured as a multi-module Gradle project to enforce clean separation of concerns, improve build speeds, and share playback/scraping modules between the Mobile and Android TV apps.
graph TD
subgraph UI Modules
App[Mobile App Module :app]
TV[Android TV Module :television]
end
subgraph Shared Core
Player[Media Playback Module :Player]
DTPV[Double-Tap Seek library :doubletapplayerview]
end
subgraph Content Engines
M3U[M3U Parser / Playlists]
Vega[Vega JavaScript Extension Runner]
end
App --> Player
TV --> Player
Player --> DTPV
App --> Vega
TV --> Vega
App --> M3U
TV --> M3U
- :app: The main phone/tablet client built using Jetpack Compose, containing provider configurations, watch history, downloads, search, and device pairing setups.
- :television: A tailored Android TV Leanback/TV-Compose app optimized for D-pad navigation, featuring weather forecast screens, custom pairing receivers, and dynamic layouts.
- :Player: A shared media playback library wrapper for AndroidX Media3 (ExoPlayer) with PiP (Picture-in-Picture) lifecycle support.
- :doubletapplayerview: Custom Compose component providing YouTube-like double-tap-to-seek overlays on top of the media controller.
- Live TV Streaming: Load massive M3U playlists with rapid group filtering, quick search, and category list UI.
- VOD Catalogs: Categorized movies and TV shows gathered from active provider channels.
- Local Downloads: Manage offline VOD downloads with progress tracking and storage control.
- Watch History & Bookmarks: Keep track of recently played channels, movies, and current playback resume positions.
- Mobile-TV Pairing: Scan and pair with your Android TV module to synchronize and cast provider content.
- Leanback Engine & Compose: Fluid 10ft user interface tailored for standard remote control D-pads.
- Universal Search: On-screen keyboard for looking up channels and series across all scrapers.
- Integrated Speed Test: Measure real-time network download speeds and latency straight from your TV.
- Weather Dashboard: Full Compose-based weather forecast widget showing current weather parameters and upcoming days' outlook.
- Smart Episode Filtering: Clean, filtered lists of episodes that automatically hide warning messages and dead scraper links.
- Uses a headless JS/TS WebView bridge to execute custom external scrapers securely.
- Automatic Playback: Resolves streams dynamically and starts the highest-quality source first.
- Resilient Execution: Implements a 3-attempt JS evaluation retry loop with automatic WebView re-creation on scrapes that timeout.
- For a developer guide on writing JS extensions, see VEGA_DOCS.md.
- Language: Kotlin
- UI Framework: Jetpack Compose & Compose for TV
- Media Engine: AndroidX Media3 (ExoPlayer)
- Networking: OkHttp & Gson
- Async Execution: Kotlin Coroutines & Flow
- Image Loading: Coil
- Animations: Lottie for Compose
- Android Studio Ladybug/Meerkat or newer.
- JDK 17 configured in Android Studio Gradle settings.
- Android SDK 24+ (Minimum SDK) / SDK 36 (Target SDK).
- Clone this repository:
git clone https://github.com/samyak2403/IPTVMine-Pro.git
- Open Android Studio and import the directory.
- Gradle Sync the project.
- Select your run configuration target:
app: To run the mobile/tablet client.television: To run the Android TV client (use an Android TV Emulator or physical TV box with Developer Options enabled).
We track active defects and code health details in BUGS.md. Feel free to refer to it for API compatibility considerations and known lifecycle issues.
- To submit bug reports, navigate to Settings > Bug Report in the mobile app, or open a GitHub issue.
- Maintainers can review ongoing issues in BUGS.md's defect registry before submitting Pull Requests.
Built with ❤️ for the Android & IPTV Developer Community.




