Welcome to Private TV β a cross-platform Flutter application for browsing public and private videos.
The app integrates with a Django REST Framework backend and uses Bloc for state management.
- π User authentication & registration (JWT)
- π₯ Browse public and private videos
- π¬ View and post comments
- π€ User profile (avatar, username, email)
- π± iOS & Android support
- β‘ State management via flutter_bloc
- Flutter β UI framework
- Dart β programming language
- flutter_bloc β state management
- http β HTTP client
- flutter_screenutil β responsive design
- shared_preferences β local storage (tokens)
- top_snackbar_flutter β notifications
lib/
βββ api/ # Bloc, repositories, API integration
β βββ auth/ # Authentication & registration
β βββ videos/ # Video features
βββ app/ # UI & app logic
β βββ components/ # UI components (Logo, List, Widgets)
β βββ pages/ # Screens (Home, Settings, Auth)
β βββ themes/ # Colors & styles
βββ main.dart # App entry point
git clone https://github.com/xdido2/private_tv.git
cd private_tvflutter pub getflutter run- Android:
flutter build apk --release- iOS:
flutter build ios --releaseBy default, the app connects to the Django REST API ( see Backend README).
API config is located in lib/api/helper.dart:
class AuthHttp {
static const String baseUrl = "http://127.0.0.1:8000";
}POST /users/login/β user loginPOST /users/register/β user registrationGET /users/me/β fetch current userGET /videos/video_list/β fetch videosGET /videos/private/β fetch private videos (only superusers, see backend doc)GET /videos/<uuid:video_id>/comments/β fetch comments for a videoPOST /videos/<uuid:video_id>/comments/β post a new comment
This project is licensed under the MIT License.