A cross-platform IPTV player built with Flutter. Supports M3U playlists and XMLTV EPG data.
- M3U playlist support (URL or local file)
- XMLTV EPG integration with 7-day TV Guide
- Channel search and favorites
- Mini-player / picture-in-picture
- Dark theme UI
- macOS
- iOS
- Android
- Windows
- Linux
Download the latest build from the Releases page.
Requires Flutter 3.x and Dart 3.x.
git clone https://github.com/kilabyte/NovaTV.git
cd NovaTV
flutter pub get
flutter run -d macosBuild for release:
flutter build macos --release
flutter build ios --release
flutter build apk --release
flutter build windows --release
flutter build linux --releaseIf you modify Hive models, regenerate the adapters:
dart run build_runner build --delete-conflicting-outputs- Go to Settings and add a playlist (M3U URL)
- Optionally add an XMLTV EPG URL for the TV Guide
- Browse channels and start watching
lib/
├── config/ # Theme, routes, configuration
├── core/ # Shared utilities
├── features/
│ ├── playlist/ # M3U parsing, channels
│ ├── epg/ # XMLTV parsing, TV Guide
│ ├── player/ # Video playback
│ ├── search/ # Search functionality
│ ├── settings/ # App preferences
│ └── home/ # Dashboard
└── shared/ # Reusable widgets
- Flutter / Dart
- Riverpod (state management)
- Hive CE (local storage)
- media_kit (video playback)
- go_router (navigation)
- dio (HTTP)
BSD 3-Clause License. See LICENSE.