Plan JavaFX applications for mobile, embedded, browser-delivered, and multi-target runtimes with explicit platform boundaries.
SkillScore100Maintained
Automatic
◆Frontend / UI pack
Last verified 8/4/2026
What it changes
Passed 22 of 22 test cases with the skill, and 20 of 22 without it.
Without skill91%
With skill100%
Checks it passed that the model alone missed
Uses Platform.isSupported with ConditionalFeature.VIRTUAL_KEYBOARD.
Uses Platform.isSupported with ConditionalFeature.INPUT_TOUCH to check for touch capability.
Centralizes or queries runtime platform capabilities rather than relying solely on screen width transform listeners.
2 fixed20 passed either way0 still failing0 broke
Pass-rate lift
+9 pp
Tokens
-7%
Agent turns
0%
Response time
-24%
Model gemini-3.6-flashMeasured 8/4/2026v122 of 22 cases passed with skill
Tokens, turns and time describe resource use, not a dollar price.
See it in action
One of 2 test cases the skill fixed. Same model, same prompt, with and without the skill.
1 of 2
Prompt
How can I set up a JavaFX application stage that scales its layout and UI components dynamically when deploying to small touch-oriented embedded screens versus standard desktop setups? Please provide a simple Java code snippet.
What was checked, without and with the skill
Checked
Without skill
With skill
Uses Platform.isSupported with ConditionalFeature.INPUT_TOUCH to check for touch capability.
Missed
Passed
Centralizes or queries runtime platform capabilities rather than relying solely on screen width transform listeners.
Missed
Passed
case-01 · gemini-3.6-flash · 8/4/2026 · answers are capped and redacted
What's inside
The instructions your model reads when the skill loads.
SKILL.md42 linessingle file
JavaFX Mobile, Embedded, and Multi-Target Delivery
Use this skill when the same JavaFX codebase must support desktop plus browser, mobile, or embedded
targets, or when the product is device-oriented from the start.
Example
import javafx.application.Application;
import javafx.application.ConditionalFeature;
import javafx.application.Platform;
import javafx.scene.Scene;
import javafx.scene.control.Label;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;
public class TargetAwareApp extends Application {
@Override
public void start(Stage stage) {
boolean touch = Platform.isSupported(ConditionalFeature.INPUT_TOUCH);
var label = new Label(touch ? "Touch-first layout" : "Desktop layout");
stage.setScene(new Scene(new StackPane(label), 480, 320));
stage.show();
}
}
Setup notes
Treat platform differences as architecture, not just packaging.