Skip to content

Mohamed-Taha-Sta/NetflixProject

Repository files navigation

JavaFX Netflix Application

Project Overview

This is a JavaFX application designed to manage TV series and movies. The application follows a 4-tiered architecture (MVC with an additional layer for services) and is built using Java 8 and Oracle as the database management system. It features a custom-made video player, countless pages, and accounts for actors, admins, producers and regular Users.

Features

The application allows for the management of TV series, each characterized by a name, director, release year, language, country of origin, and an image. Series are composed of multiple episodes grouped into seasons. Each episode has a summary which can be a text or a short video (synopsis). A synopsis is made for each series and each season of the series.

Users can rate or comment on each series, season, or episode. Each new episode release triggers a notification to users who have positively rated the series. Users have a name, an email address, a date of birth, and preferences.

Roles

The application caters to four types of users:

  • Administrators
  • Producers (Directors)
  • Actors
  • Users

Each role has specific permissions and capabilities within the application.

UML Diagram

The UML diagram provides a visual representation of the system's architecture, showing the different roles and their interactions within the application. It was a crucial part of the design process, ensuring that all components and relationships were accurately represented.

Constraints

The project was developed by a team of 3 students and meets the following constraints:

  • UML for design
  • Oracle as the database management system
  • Java 8 as the programming language (Use of API Stream is mandatory)
  • Layered architecture (GUI, Controller, Service, DAO)
  • Java FX for the graphical interface

Reflection

I am proud of what I've accomplished along with my team. Despite the challenges, we were able to meet all the constraints and create a functional and efficient application. This project not only allowed me to apply what I've learned in class but also challenged me to learn new skills and concepts. I would like to express my deepest appreciation to my team members who have worked along with me tirelessly on this project. Their dedication, enthusiasm, and insight were incredibly helpful and played a vital role in the success of this project. The environment we created together was one of collaboration, respect, and mutual learning. I am grateful for your cooperation and look forward to our future endeavors. Thank you Jesser and Fares!

About

A Netflix Java application thing.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published