Banner

LAVENDER 📺

A fully-functional video streaming app like netflix made in Flutter using Custom Nodejs backend.

How To Run This Project 🏃‍♂️

  1. Clone the repository.
  2. cd lavendr_app
  3. Do flutter pub get.

Features 🚀

  1. User can watch live tv.
  2. User can watch latest Movies and series.
  3. Get to know about all the upcoming movies/series.

Built With 🛠

  • Flutter – UI toolkit for building beautiful, natively compiled applications for mobile, web, desktop, and embedded devices from a single codebase.
  • http – A composable, Future-based library for making HTTP requests.
  • Bloc – A predictable state management library that helps implement the BLoC (Business Logic Component) design pattern.
  • equatable – A Dart package that helps to implement value based equality without needing to explicitly override == and hashCode.
  • yoyo_player – yoyo_player is a video player that allows you to select HLS video streaming by selecting the quality
  • lottie – To implement lottie animation.
  • nodeJS – Node.js is a JavaScript runtime for server side code.
  • express – Fast, unopinionated, minimalist web framework for Node.js.

Package Structure for app 🗼

lib # Root Package

├── data                         #data layer
|   ├── channels                 #channels    
|   │   ├── channel              #channel model      
|   │   └── language             #language model       
│   ├── comming_soon  
|   |   └── comming_soon         #comming_soon model
│   ├── movies  
|   |   ├── movies_categories    #movies_categories model
|   |   └── movies               #movie model
│   └── series
|       ├── episode              #episode model
|       ├── seasons              #season model
|       ├── series_categories    #series_categories model
|       └── series               #series model      
|                  
├── domain                       #connect data layer with ui layer
|   └── repositories             #single source of truth 
|       └── network_repo         #handel api request 
|
├── presentation                 #ui layer
|    ├── bloc                    #state management   
|    ├── pages                   #app screens 
|    └── widgets                 #widgets
|
├── utils                        #utility
|   └── constants                #contain constants
|                          
└── main.dart                    #entry point

Architecture for app 🏹

This app uses Clean Architecture.

Clean Architecture.

Features Under Progress 🐌

  1. Web support.

Platform Supported 💻📱

  • Android
  • IOS

GitHub

View Github