A comprehensive Netflix clone application built with native Android Java for streaming movies and TV shows. Powered by TMDB database for content delivery.
- Movies & TV Shows: Browse and stream latest content with detailed information
- Cast Information: Detailed cast profiles with biography and filmography
- Trailers: Watch trailers and previews
- Smart Search: Find content easily with advanced search functionality
- Favorites: Save and manage favorite content locally
- Recommendations: Get personalized content recommendations
- Streaming: Built-in video streaming capabilities
- Responsive UI: Smooth, Netflix-style user interface
- Fragment-based architecture with dedicated fragments for Movies, Series, Search, and Favorites
- MVVM (Model-View-ViewModel) pattern implementation
- Room Database for local storage and caching
- Retrofit for TMDB API integration
- Bottom navigation system for main app navigation
- API Integration: RESTful architecture using Retrofit
- Local Storage: Room Database implementation for favorites
- Image Handling: Efficient image loading and caching with Glide
- Data Models: Comprehensive models for movies, shows, and cast
- Error Handling: Robust error management with retry mechanisms
- RecyclerView: Multiple custom adapters for different view types
- MovieBriefSmallAdapter
- SeriesBriefSmallAdapter
- MovieCastsAdapter
- TrailerAdapter
- Dynamic Layouts:
- CollapsingToolbarLayout for immersive details pages
- GridLayoutManager for content grids
- LinearLayoutManager for horizontal scrolling lists
- Custom Views:
- AVLoadingIndicatorView for loading states
- WebView implementation for streaming
- BottomNavigationView for main navigation
- Paginated content loading
- Dynamic content updates
- Comprehensive filtering and sorting
- Genre-based categorization
- Detailed cast member profiles
- Biography with expandable text
- Age calculation system
- Complete filmography listing
- TV show appearances
- Trailer playback support
- Streaming capability
- Custom video player integration
- Quality selection options
- Smooth transitions and animations
- Progress indicators
- Error state handling
- Pull-to-refresh functionality
- Infinite scrolling
-
Network:
- Retrofit: REST API client
- OkHttp: HTTP client
- Gson: JSON parsing
-
UI & Image:
- Glide: Image loading and caching
- RecyclerView: List handling
- Material Design Components
- AVLoadingIndicatorView: Loading animations
-
Database:
- Room: Local data persistence
- SQLite: Database engine
-
Architecture:
- ViewModel
- LiveData
- Fragment Navigation
- TMDB (The Movie Database) API for content
- Real-time data synchronization
- Comprehensive error handling
- Rate limiting management
- User authentication system
- Offline content support
- Enhanced video player features
- Social sharing capabilities
- Personal watchlist
- Clone the repository
- Add your TMDB API key in Constants.java
- Build and run the project
This project is licensed under the MIT License - see the LICENSE file for details
For any queries or suggestions, feel free to reach out.
Built with ❤️ by s0oraj

