# JavaFX Software Development Kit
Version 25 API Specification

The JavaFX API is composed of the following groups of modules:

> JavaFX Core Modules:
>   These APIs are in modules whose names start with `javafx`. They are part of the core JavaFX platform.
> JavaScript Object:
>   These APIs are in the `jdk.jsobject` module.
> JavaFX Incubator Modules:
>   These APIs are in modules whose names start with `jfx.incubator`. They are experimental APIs subject to modification or removal in subsequent versions of JavaFX.

Modules
Module
Description
javafx.base
Defines the base APIs for the JavaFX UI toolkit, including APIs for bindings, properties, collections, and events.
javafx.controls
Defines the UI controls, charts, and skins that are available for the JavaFX UI toolkit.
javafx.fxml
Defines the FXML APIs for the JavaFX UI toolkit.
javafx.graphics
Defines the core scenegraph APIs for the JavaFX UI toolkit (such as layout containers, application lifecycle, shapes, transformations, canvas, input, painting, image handling, and effects), as well as APIs for animation, css, concurrency, geometry, printing, and windowing.
javafx.media
Defines APIs for playback of media and audio content, as part of the JavaFX UI toolkit, including `MediaView` and `MediaPlayer`.
javafx.swing
Defines APIs for the JavaFX / Swing interop support included with the JavaFX UI toolkit, including `SwingNode` (for embedding Swing inside a JavaFX application) and `JFXPanel` (for embedding JavaFX inside a Swing application).
javafx.web
Defines APIs for the WebView functionality contained within the the JavaFX UI toolkit.
jdk.jsobject
Defines the API for the JavaScript Object.
jfx.incubator.input
Incubates the mechanism for customization of JavaFX controls using the `InputMap`.
jfx.incubator.richtext
Incubates the RichTextArea control and related classes.