Let's Stream is a modern, feature-rich media streaming application built with Flutter, featuring a complete Netflix-inspired UI redesign. It allows users to explore, search, and stream movies, TV shows, and anime with a premium cinematic experience, native Android Picture-in-Picture support, and enterprise-grade automated release workflows.
- Native Picture-in-Picture (PIP): True Android system PIP support with smart overlay controls
- PIP UI Management: Overlay controls automatically hidden in PIP mode, restored in fullscreen
- Multi-Source Streaming: Switch between 20+ video sources for reliable playback
- In-App Video Player: Secure, iframe-based video player with comprehensive controls
- Seamless PIP Experience: YouTube-like PIP with automatic UI adjustments
- Cinematic Design: Complete Netflix-inspired UI with dark theme (#141414), red accents (#E50914), and Bebas Neue typography
- Material 3 + Cinematic Navigation: 72dp hybrid bottom nav with red glow, pill-shaped indicators, and animated icons
- Immersive Hero Banners: Full-bleed featured content with gradient overlays and action buttons
- Category Browse: Grid layout with actual movie/TV backdrop images for each genre
- Premium Media Cards: 2:3 poster ratio, 4px border radius, shimmer loading states
- Media Discovery: Browse extensive catalogs of movies, TV shows, and anime
- Dynamic Home Screen: Interactive carousels for trending, now playing, and airing content
- Hub/Categories: Movies, TV Shows, and Browse tabs with personalized recommendations
- Advanced Search: Debounced, paginated search with 3-column poster grid and category browse
- Detailed Views: Netflix-style detail screens with 60% hero banners, cast, similar titles, and episode guides
- My List: Grid-based watchlist with edit mode for managing saved content
- Netflix Design System: Custom theme with Netflix colors, typography (Bebas Neue + Inter), and component library
- Modern UI/UX: Material Design 3 with Netflix styling, smooth animations and shimmer loading
- Offline Support: Intelligent caching with Hive for offline browsing
- Accessibility: Screen reader support, dynamic text scaling, and touch target optimization
- Performance Optimized: Image optimization with WebP/AVIF, lazy loading, and prefetching
- Automated Releases: GitHub Actions workflows for signed APK builds
- Multi-Architecture: ARM64, ARMv7, and x86_64 APK variants
- Professional CI/CD: Automated versioning, tagging, and release notes generation
The project has evolved significantly with advanced features and enterprise-grade automation:
- β Phase 1 (Completed): Core features including API integration, navigation, all major screens (Home, Movies, TV, Anime, Search, Detail), and complete UI/UX foundation
- β Phase 2 (Completed): Native Android PIP support, GitHub Actions automation, performance optimizations, accessibility features, and offline capabilities
- β Phase 3 (Completed): Complete Netflix UI redesign - all 21 screens redesigned with Netflix styling, Material 3 + Cinematic navigation, Netflix theme system (colors, typography), category browse with dynamic images
- π Phase 4 (In Progress): Firebase integration for user authentication, watchlist synchronization, and advanced user preferences
- π Phase 5 (Future): Advanced search filters, recommendation engine, and cross-platform iOS support
- Framework: Flutter 3.24.3
- Language: Dart
- State Management: Riverpod (StateNotifier pattern)
- Navigation: GoRouter with deep linking
- Design: Netflix-inspired UI with Material Design 3, Netflix theme system (colors, typography)
- Video Player: InAppWebView with native PIP support
- Media Database: The Movie Database (TMDB) API
- Video Sources: Custom multi-source streaming API
- HTTP Client: Dio with interceptors and retry logic
- Authentication: Firebase (planned integration)
- Local Storage: Hive for offline caching
- Image Optimization: WebP/AVIF support with progressive loading
- State Persistence: Riverpod with auto-dispose
- Connectivity: Network-aware image loading and caching
- CI/CD: GitHub Actions workflows
- Code Generation: build_runner for model generation
- Testing: Flutter test framework
- Signing: Android keystore with secure GitHub secrets
- Distribution: Multi-architecture APK builds (ARM64, ARMv7, x86_64)
Download the latest version from the Releases page:
- ARM64 (
arm64-v8a.apk): For most modern Android devices (recommended) - ARMv7 (
armeabi-v7a.apk): For older Android devices - x86_64 (
x86_64.apk): For Android emulators and x86 devices
- Android: 5.0 (API 21) or higher
- Target SDK: Android 14 (API 34)
- RAM: 2GB+ recommended
- Storage: 50MB for app + cache space
- Download the appropriate APK for your device
- Enable "Install from unknown sources" in Android settings
- Install the APK file
- Grant necessary permissions when prompted
- Flutter 3.24.3 or higher
- Dart SDK 3.5.0 or higher
- Android Studio with Android SDK
- Git for version control
# Clone the repository
git clone https://github.com/chintan992/letsstream-flutter-v2.git
cd letsstream-flutter-v2
# Install dependencies
flutter pub get
# Run code generation
dart run build_runner build --delete-conflicting-outputs
# Run the app
flutter run# Build signed release APK (requires keystore setup)
flutter build apk --release --split-per-abi
# Build debug APK
flutter build apk --debugThe app uses TMDB API for movie/TV data. You may need to configure API keys in the appropriate service files.
Video streaming sources are configured through the custom API. The app supports 20+ different streaming providers for reliable playback.
Contributions are welcome! Please read our contributing guidelines and submit pull requests for any improvements.
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
The project uses automated GitHub Actions workflows:
# Trigger automated release
git commit -m "Release: Add new features and improvements"
git pushThis project is licensed under the MIT License - see the LICENSE file for details.
- TMDB for providing comprehensive movie and TV show metadata
- Flutter Team for the amazing cross-platform framework
- Riverpod for elegant state management
- Community for feedback and contributions
Built with β€οΈ using Flutter