Radiance is a collection of libraries for writing modern, elegant and well-performing Swing applications.
The Neon library provides a core set of APIs to work with images and text that scale with the display resolution. Neon icons scale to maintain crisp, pixel-perfect visuals for application icons. Font APIs can be used to render platform-consistent textual content across a variety of supported platforms.
The Photon library enables usage of vector-based icons in Swing applications. SVG content can be either loaded asynchronously at runtime from a variety of local and remote sources, or transcoded offline to Java / Kotlin classes that use pure Java2D canvas operations that do not require expensive runtime overhead of third-party dependencies.
The Trident library provides powerful and flexible animation APIs that scale from simple, single-property cases to complex scenarios that involve multiple animations. Trident powers all animations in the Radiance libraries.
The Substance library provides a powerful and flexible set of APIs that can be used to skin Swing applications to address the most demanding, modern design requirements. It comes with built-in support for all core Swing components, and a comprehensive API set for consistent rendering of third-party / application components.
The Flamingo library provides a robust set of additional Swing components that can be used as building blocks for creating modern, rich Swing applications. In addition to providing powerful command button and breadcrumb bar components, Flamingo packs an Office Command Bar (ribbon) container that can host a complex hierarchy of flexible, scalable application control surface.
The Kormorant library exposes the entire API surface of Flamingo as a custom, targeted and approachable Kotlin DSL (domain-specific language).
The Beacon plugin is a visual runtime debugger for Substance.
The Electra tool allows adding callout bubbles to documentation screenshots.
The Hyperion editor allows creating and editing files that define custom button shapers.
The Ignite plugin wraps the Photon library to allow build-time transcoding of SVG content into Java / Kotlin classes.
The Jitterbug editor allows creating and editing color scheme lists.
The Lightbeam library provides tools for Swing look-and-feel developers to measure the performance of their libraries.
The Zodiac library provides utilities for taking screenshots for Substance and Flamingo documentation.
Radiance artifacts are available in the central Maven repository under groupId=org.pushing-pixels
-
radiance-neon
for Neon -
radiance-photon
for Photon -
radiance-trident
for Trident -
radiance-substance
for Substance -
radiance-substance-extras
for Substance extras -
radiance-flamingo
for Flamingo -
radiance-kormorant
for Kormorant -
radiance-spoonbill
for Spoonbill
This document is an overview of how to build Radiance artifacts locally.