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
Lucent is a port of Lumen to Kotlin.
- 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.