Skip to content

TomasSirotek/gui-streaming-platform

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Streaming-platform-javaFx

🎒 Compulsory Assignment | 2nd Semester | SDE



Logo

Java FX GUI
Explore the docs »

Problem

What is the best way to present the recommendations to the user?

Solution

Create a GUI that shows recommendations to the user in a cool way.

Table of Contents

  1. About The Project
  2. Application design
  3. Features
  4. Style guide
  5. Application design
  6. Application design patterns
  7. License
  8. Contact

Tech stack

Style

Features

  • Abstract controller
  • User authentication
    • Basic login with user name and password
    • User log out
    • Simple validation for empty fields
    • Complete error handling
    • Enhanced user experience with multithreading
    • Usage of CSS for UX enhancement
  • Movies dashboard
    • Display of all movies for all 3 required methods
    • Movies are constructed inside MFXScrollPane
    • API calls to receive the images for movies
    • Display of all movies with its title,year and rating
    • Dynamic star rating display ★★★★☆
    • Dynamically created parts of GUI
    • Usage of CSS for UX enhancement (Scrollpanes)
      • User is able to scroll left-to-right right-to-left in each movies recommendation to view amount that is displayed
      • Hover effect on each movie that displays necessary informations
  • Multithreading in Java Fx
    • Use of tasks,multithreading,tasks
    • Not blocking the main JavaFx thread loading all needed files

Back end is based on
https://github.com/jeppeml/MovieRecommendationSystem-CachedImplementation

Style guide

Typography

Key parts why I chose to use this popular sans-serif font

  • Legibility
    • Clean and modern design
  • Character
    • Distinctive character
  • Versatility
    • Can be used in wide range of applications

Color pallet

Effects

Components

Application design

Application consist of two FXML views

  • login-view.fxml
  • home-view.fxml

Login page

Login-page

Dashboard page

Dashboard-page

Application design patterns

  • Singleton pattern (Currently logged user)
  • Facade design pattern

Licence

Distributed under the MIT License. See LICENSE for more information.
I do not claim to own any rights to any assets used in this application and the application ends here and wont be further distributed or developed.

Made by @TomassSimko 2023 SDE cs project posted here on GitHub.
Hope you will like it!
Thank you for your attention! TTT ✒️

Contact

Tomas Simko - @twitter -simko.t@email.cz - @linkedIn

Project Link: https://github.com/TomassSimko/gui-streaming-platform