Skip to content

Latest commit

 

History

History
18 lines (13 loc) · 1.56 KB

lumen.md

File metadata and controls

18 lines (13 loc) · 1.56 KB

Lumen - animation blueprints for Swing

Lumen aims to provide blueprints for adding animation to Swing applications using the Trident animation engine. Lumen is a Swing application that connects to MusicBrainz and Amazon, and shows a list of albums for a specific performer. It is a pure Swing / Java2D application with the following dependencies:

  • Trident for animations
  • Neon for consistent text appearance and correct high-DPI rendering
  • Retrofit for fetching information from MusicBrainz without manual handling of endpoints and JSON parsing

Deeper dives

  • Part 1 - window structure and simple animations such as component appearance (fade in), rollovers and window disposal (fade-out) using built in and custom class attributes and setters.
  • Part 2 - visuals of the main window.
  • Part 3 - animated load progress indication while the application is loading data.
  • Part 4 - loading the album art matching the specific search string and asynchronously displaying the associated images.
  • Part 5 - scrolling the album covers showed in the container and adding animations to the scrolling.
  • Part 6 - complex transition scenarios.