Basics
Guides
API Reference
Basics
Guides
API Reference
TilesFX adds dashboard-style JavaFX tiles to Aussom under
fx.hansolo.tilesfx. It is useful when you want compact, highly visual status
widgets such as gauges, counters, clocks, charts, and KPI tiles without
building each component from scratch.
The Aussom wrapper is builder-first and AJI-based. The common Tile builder flow is wrapped directly, while less common or skin-specific APIs remain reachable through AJI.
| Concept | Meaning |
|---|---|
tilesfx.newTileBuilder() |
Main entry point for creating a tile. |
Tile |
The runtime tile control you add to the scene graph. |
TileBuilder |
Fluent builder used to configure a tile before build(). |
TileSection |
Numeric range band used by gauge-style tiles. |
TileTimeSection |
Time range band used by clock-style tiles. |
TileAlarm |
Alarm marker data used by clock-like tiles. |
TileChartData |
Named chart item used by chart-based tile skins. |
Include the module and the normal JavaFX layout helpers you need:
include fx;
include fx.Color;
include fx.VBox;
include fx.hansolo.tilesfx.tilesfx;
include fx;
include fx.Color;
include fx.VBox;
include fx.hansolo.tilesfx.tilesfx;
app = fx.fxApp("TilesFX Gauge", 420, 420);
green = new Color("#37A169");
orange = new Color("#DD6B20");
red = new Color("#E53E3E");
normal = new TileSection(0.0, 70.0, "Normal", green);
warn = new TileSection(70.0, 90.0, "Warn", orange);
hot = new TileSection(90.0, 100.0, "Hot", red);
tile = tilesfx.newTileBuilder()
.skinType("GAUGE")
.title("CPU")
.unit("%")
.value(42.0)
.minValue(0.0)
.maxValue(100.0)
.threshold(85.0)
.animated(false)
.sections([normal, warn, hot])
.prefSize(320.0, 320.0)
.build();
root = new VBox();
root.add(tile);
app.setLayout(root);
app.show(true);
fx.shutdown();
include fx;
include fx.Color;
include fx.VBox;
include fx.hansolo.tilesfx.tilesfx;
app = fx.fxApp("TilesFX Clock", 420, 420);
blue = new Color("#3182CE");
red = new Color("#E53E3E");
workHours = new TileTimeSection(
tilesfx.localTime(9, 0),
tilesfx.localTime(17, 0),
"Work",
blue
);
lunchAlarm = new TileAlarm("2026-04-19T12:00:00Z", "ONCE", true, "Lunch", red);
tile = tilesfx.newTileBuilder()
.skinType("CLOCK")
.title("UTC")
.text("Ops")
.timeIso("2026-04-19T12:00:00Z")
.running(false)
.dateVisible(true)
.textVisible(true)
.timeSections([workHours])
.alarms([lunchAlarm])
.prefSize(320.0, 320.0)
.build();
root = new VBox();
root.add(tile);
app.setLayout(root);
app.show(true);
fx.shutdown();
include fx;
include fx.Color;
include fx.VBox;
include fx.hansolo.tilesfx.tilesfx;
app = fx.fxApp("TilesFX Chart", 520, 360);
blue = new Color("#3182CE");
teal = new Color("#319795");
green = new Color("#37A169");
api = new TileChartData("API", 42.0, blue);
db = new TileChartData("DB", 31.0, teal);
cache = new TileChartData("Cache", 19.0, green);
tile = tilesfx.newTileBuilder()
.skinType("BAR_CHART")
.title("Services")
.text("Requests")
.chartData([api, db, cache])
.animated(false)
.textVisible(true)
.prefSize(420.0, 320.0)
.build();
app.setLayout(tile);
app.show(true);
fx.shutdown();
animated(false) in tests and deterministic demos when you want stable
values immediately.TileSection, TileTimeSection, and TileAlarm are optional. Only attach
them when the chosen skin type actually uses them.tile.obj and AJI.
Aussom
Write once. Embed everywhere.
Copyright 2026 Austin Lehman. All rights reserved.