Project information

  • Course: Software Development
  • Project date: Spring 2021
  • Programming Language/Frameworks: Java
  • Project URL: Github

I used JavaFX 11 to build a GUI application that displays a collection of images depending on the outcome of a search query to the iTunes Search API. After the user inputs an artist, song, or album into the search field and presses the 'update images' button, a request is submitted to the iTunes Search API. The response JSON string is then analyzed, and a list of image URLs is obtained, which are later downloaded. During the downloading process, the progress bar located at the bottom updates to reflect the completion status. Once all the images are downloaded, twenty images are displayed, and every two seconds, one is substituted randomly with an image that is not currently shown. The play/pause button controls whether the random image replacement continues or stops.

In order to do this I utilized my knowledge of inheritance, polymorphism, interfaces, threading, and JSON. In order to accomplish this project I divided work into two categories: frontend and backend. For the frontend I searched the JavaFX 11 library to find code that would help me create a grid that would contain images as well as customize the window of the gallery. For the backend, I wrote a method that would retrieve and store the JSON response string, a method that would return a string of image URLs, and a method to access the ImageView objects.

Designed by BootstrapMade