ɳTV Getting Started
هذا المحتوى غير متوفر بلغتك بعد.
ɳTV Getting Started
Section titled “ɳTV Getting Started”This guide walks through installing ɳTV and connecting it to a self-hosted ɳSelf backend. If you only want IPTV / M3U live channel support without a backend, skip to Step 4: just clone, run, and add your M3U URL in Settings.
Prerequisites
Section titled “Prerequisites”Flutter app:
- Flutter 3.10 or later: flutter.dev/install
- Dart 3.0 or later (included with Flutter)
- A device or simulator for your target platform
Backend (required for library features):
- ɳSelf CLI: Installation
- An nself license key with the ɳTV bundle entitlement ($0.99/mo) : get one at nself.org
- Docker Desktop (macOS/Windows) or Docker Engine (Linux)
Step 1: Bootstrap the Backend
Section titled “Step 1: Bootstrap the Backend”Create a dedicated directory for the ɳTV backend and initialize it with the ɳSelf CLI:
mkdir ntv-backend && cd ntv-backendnself initnself init asks for a project name, domain (use localhost for local dev), and environment settings. Accept the defaults for a local setup.
Step 2: Install ɳTV Plugins
Section titled “Step 2: Install ɳTV Plugins”# Set your license keynself license set nself_pro_xxxxx...
# Required paid pluginsnself plugin install streaming stream-gateway epg tmdb
# Free plugins (no key needed)nself plugin install torrent-manager content-acquisition subtitle-managerOptional paid plugins for additional features:
nself plugin install media-processing # server-side encodingnself plugin install recording # DVR from live streamsSee Backend Setup for a full plugin reference including environment variables.
Step 3: Build and Start the Backend
Section titled “Step 3: Build and Start the Backend”nself buildnself startnself build generates the docker-compose.yml from your plugin configuration. �P1� start brings all services up.
Verify the backend is ready:
nself statusAll services should show as Running. The streaming plugin API is reachable at http://localhost:8000/streaming/library (port may differ based on your project config).
Step 4: Get the Flutter App
Section titled “Step 4: Get the Flutter App”git clone https://github.com/nself-org/ntv.gitcd ntvflutter pub getRun flutter doctor to confirm your environment is ready. Resolve any issues it reports before continuing.
Step 5: Add Platform Scaffolds
Section titled “Step 5: Add Platform Scaffolds”The repository ships with the lib/ source but without generated platform directories. Add them:
flutter create .This adds ios/, android/, macos/, linux/, windows/, and web/ without touching lib/. Commit the result.
Step 6: Run the App
Section titled “Step 6: Run the App”Pick a platform:
flutter run -d macos # macOSflutter run -d chrome # Webflutter run # auto-detect connected deviceStep 7: Configure the Backend Connection
Section titled “Step 7: Configure the Backend Connection”On first launch, the Library screen shows a “Configure Backend” prompt (or open Settings from the bottom navigation bar).
- Enter your Backend URL. For local dev:
http://localhost:8000. For a remote server:https://your-server.example.com. - Enter your email and password for your nself account on that backend.
- Tap Connect.
The app stores a JWT in flutter_secure_storage. Subsequent launches skip this step until you log out or switch backends.
Verification
Section titled “Verification”The Library screen loads and shows your media catalog. Tapping a title opens the Player and starts playback. If you have not added media yet, the Library will be empty, see Step 8 below.
If you see errors, see Troubleshooting below.
Step 8: Add Media
Section titled “Step 8: Add Media”With the backend running, add media to your library:
- Manual: Copy files into the directory configured in your backend
.envasMEDIA_PATH, then runnself plugin run media-processing scanto trigger discovery. - Via torrent-manager: Open the nself admin at
http://localhost:3021and use the torrent client UI (requirestorrent-managerplugin). - Via content-acquisition: Configure automated download rules in the plugin settings.
After adding files, pull-to-refresh on the Library screen to see new titles.
For IPTV / M3U Only
Section titled “For IPTV / M3U Only”No backend is needed for live TV via M3U playlists:
- Open Settings in the bottom nav.
- Scroll to the IPTV section.
- Tap Add M3U URL and enter your playlist URL.
- Tap Add. Channels load immediately.
Troubleshooting
Section titled “Troubleshooting”| Symptom | Check |
|---|---|
| ”No backend reachable” | Run nself status on the backend. Confirm the URL and port. |
| Library is empty | Run nself plugin run media-processing scan on the backend. Check TMDB_API_KEY is set in .env. |
| Playback fails | nself status must show streaming and stream-gateway as Running. |
| No poster art | TMDB_API_KEY must be set in your backend .env. |
| EPG not showing | epg plugin must be installed and your channels must have tvg-id values. |
Next Steps
Section titled “Next Steps”- Backend Setup: full ɳTV plugin reference and environment variables
- ɳTV overview: platform matrix, architecture, and pricing
- ɳTV wiki: developer documentation