<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>JavaFX on foojay.io - Friends Of OpenJDK</title><link>https://foojay.io/today/category/javafx/</link><description>Recent content in JavaFX on foojay.io - Friends Of OpenJDK</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Wed, 30 Sep 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://foojay.io/today/category/javafx/index.xml" rel="self" type="application/rss+xml"/><item><title>JavaFX Links of September 2026</title><link>https://foojay.io/today/javafx-links-of-september-2026/</link><pubDate>Wed, 30 Sep 2026 00:00:00 +0000</pubDate><guid>https://foojay.io/today/javafx-links-of-september-2026/</guid><description>&lt;p&gt;Here are the JavaFX LinksOfTheMonth of September 2026. This was a big month with the release of JavaFX 27!&lt;/p&gt;&#10;&lt;p&gt;You can find the weekly lists on &lt;a href="https://www.jfx-central.com/links" target="_blank" rel="noopener noreferrer"&gt;jfx-central.com&lt;/a&gt;. Did we miss anything? Is there anything you want to have included in one of the next overviews? Let us know via &lt;a href="mailto:links@jfx-central.com"&gt;links@jfx-central.com&lt;/a&gt;.&lt;/p&gt;&#10;&lt;h2 id="core"&gt;Core&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;From the OpenJFX mailing list:&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;strong&gt;Alexander Zuev&lt;/strong&gt; integrated &lt;a href="https://marc.info/?l=openjdk-openjfx-dev&amp;amp;m=178836230081558&amp;amp;w=2" target="_blank" rel="noopener noreferrer"&gt;8384483: Create implementation of NSAccessibilityTable protocol&lt;/a&gt;, a 585-line addition across 11 files that gives macOS proper accessibility support for tables and lists: &amp;ldquo;&lt;em&gt;To preserve functionality the separate native peers for tables and lists are created; the list peer for now reports its role as a table for backward compatibility, that can be changed later; fixed the long existed bug where table reported incorrectly currently selected rows.&lt;/em&gt;&amp;rdquo; Reviewed by &lt;strong&gt;Andy Goryachev&lt;/strong&gt; and &lt;strong&gt;Ambarish Rapte&lt;/strong&gt;. &lt;a href="https://git.openjdk.org/jfx/pull/2217" target="_blank" rel="noopener noreferrer"&gt;PR #2217&lt;/a&gt; — &lt;a href="https://git.openjdk.org/jfx/commit/67853fbf55117f92d0fabcc02798a1115837e2e5" target="_blank" rel="noopener noreferrer"&gt;changeset 67853fbf&lt;/a&gt;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.reddit.com/r/JavaFX/comments/1w4o4t0/what_is_the_future_of_javafx_looking_like/" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Gufran Thakur&lt;/strong&gt; asks on Reddit&lt;/a&gt;: &amp;ldquo;&lt;em&gt;What is the future of JavaFX looking like?&lt;/em&gt;&amp;rdquo; A lot of interesting answers already. Want to add yours? And, thank you &lt;strong&gt;Marius Hanl&lt;/strong&gt;, for mentioning &lt;strong&gt;JFX Central&lt;/strong&gt; in your answer, we appreciate it! :-)&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="http://www.mail-archive.com/openjfx-dev@openjdk.org/msg29287.html" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Jose Pereda&lt;/strong&gt; integrated 8391779: JVM crashes after copy key event on focused WebView that has no selection&lt;/a&gt;: &amp;ldquo;&lt;em&gt;This PR adds a guard to WebKit/EditorJava.cpp, to prevent passing an empty selection to the pasteboard, that would cause an immediate JVM termination, when firing a copy key event over a focused WebView that has no selection.&lt;/em&gt;&amp;rdquo; Reviewed and integrated on 8 September. (&lt;a href="https://git.openjdk.org/jfx/pull/2241" target="_blank" rel="noopener noreferrer"&gt;PR on GitHub&lt;/a&gt;)&lt;/li&gt;&#10;&lt;li&gt;Release cycle note: the cutoff for backports into &lt;strong&gt;JavaFX 27.0.1&lt;/strong&gt; was 7 September, and &lt;a href="http://www.mail-archive.com/openjfx-dev@openjdk.org/msg28928.html" target="_blank" rel="noopener noreferrer"&gt;jfx27u is now open for 27.0.2 fixes&lt;/a&gt; — announced by &lt;strong&gt;Kevin Rushforth&lt;/strong&gt;, version bump &lt;a href="http://www.mail-archive.com/openjfx-dev@openjdk.org/msg29269.html" target="_blank" rel="noopener noreferrer"&gt;integrated by &lt;strong&gt;Ambarish Rapte&lt;/strong&gt;&lt;/a&gt; on 8 September.&lt;/li&gt;&#10;&lt;li&gt;The &lt;a href="https://github.com/openjdk/jfx/blob/master/doc-files/release-notes-27.md" target="_blank" rel="noopener noreferrer"&gt;Release Notes for JavaFX 27&lt;/a&gt; are available in the OpenJFX repository and list everything that went into this release: 7 new features, 20 other enhancements, 77 bug fixes and 6 security fixes.&lt;/li&gt;&#10;&lt;li&gt;The &lt;strong&gt;Gluon Team&lt;/strong&gt; published &lt;a href="https://gluonhq.com/news/2026-09-15-javafx-27-is-now-available/" target="_blank" rel="noopener noreferrer"&gt;JavaFX 27 is Now Available&lt;/a&gt; with an overview of the release: the Metal rendering pipeline as the new default on macOS, conditional stylesheets and media queries in CSS, JavaFX controls in the window title bar, the RichTextArea additions, and over 70 bug fixes and control performance improvements. Two things to check before upgrading: JavaFX 27 is compiled with &lt;code&gt;--release 25&lt;/code&gt;, so an older JDK fails at startup, and on macOS you can fall back to the previous pipeline with the &lt;code&gt;-Dprism.order=es2&lt;/code&gt; launch parameter.&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://openjfx.io/highlights/27/" target="_blank" rel="noopener noreferrer"&gt;JavaFX 27 Highlights&lt;/a&gt; lists what is new: RichTextArea tab stop attributes plus embedded image, text background and wavy underline attributes; conditional stylesheet imports; &lt;code&gt;ConditionalFeature&lt;/code&gt; and platform media queries; JavaFX controls in the title bar; animations that now respect the reduced motion preference; improved macOS accessibility including navigable static text and hyperlinks; better Flatpak integration through &lt;code&gt;GtkFileChooserNative&lt;/code&gt;; and iOS improvements including &lt;code&gt;UIWindowScene&lt;/code&gt; support. The community fixed more than 60 bugs, and dependencies moved to WebKit 623.1, GStreamer 1.28.3, libxml2 2.15.3 and libxslt 1.1.45. The highlights page credits &lt;a href="https://gluonhq.com" target="_blank" rel="noopener noreferrer"&gt;Gluon&lt;/a&gt; for the bulk of the work on this release.&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Andy Goryachev&lt;/strong&gt; integrated &lt;a href="https://mail-archive.com/openjfx-dev@openjdk.org/msg29554.html" target="_blank" rel="noopener noreferrer"&gt;8390913: RichTextArea: Down arrow stuck on paragraph if space above and below are set&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Fixes broken navigation introduced in JDK-8370902 with non-zero paragraph spacing (above, below, line spacing).&lt;/em&gt;&amp;rdquo; The Rich Editor Demo was also updated to allow setting paragraph line spacing in addition to space above/below (right click → Paragraph). A sizeable change at 539 lines across 11 files, reviewed by &lt;strong&gt;Jose Pereda&lt;/strong&gt; and &lt;strong&gt;Lukasz Kostyra&lt;/strong&gt;, integrated on 15 September. (&lt;a href="https://github.com/openjdk/jfx/pull/2280" target="_blank" rel="noopener noreferrer"&gt;PR on GitHub&lt;/a&gt;, &lt;a href="https://github.com/openjdk/jfx/commit/23c3580cc2d25b13dbf4cb8142afb51691c2cf5f" target="_blank" rel="noopener noreferrer"&gt;changeset&lt;/a&gt;)&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Marius Hanl&lt;/strong&gt; integrated &lt;a href="https://mail-archive.com/openjfx-dev@openjdk.org/msg29563.html" target="_blank" rel="noopener noreferrer"&gt;8392149: Mark deprecated snap methods for removal in SkinBase&lt;/a&gt;, a heads-up for anyone writing custom skins: &amp;ldquo;&lt;em&gt;Since we will remove the snapping methods in &lt;code&gt;Region&lt;/code&gt; at one point, we should also do that in &lt;code&gt;SkinBase&lt;/code&gt;.&lt;/em&gt;&amp;rdquo; A continuation of JDK-8390773, reviewed by &lt;strong&gt;Kevin Rushforth&lt;/strong&gt; and &lt;strong&gt;Andy Goryachev&lt;/strong&gt;, integrated on 15 September. (&lt;a href="https://github.com/openjdk/jfx/pull/2311" target="_blank" rel="noopener noreferrer"&gt;PR on GitHub&lt;/a&gt;, &lt;a href="https://github.com/openjdk/jfx/commit/bb1789c15faadc866656a5ee2520e1ee4cabd95a" target="_blank" rel="noopener noreferrer"&gt;changeset&lt;/a&gt;)&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.infoq.com/news/2026/09/java27-released/" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Michael Redlich&lt;/strong&gt; wrote up the Java 27 release for InfoQ, with a section on JavaFX 27&lt;/a&gt;: JavaFX 27 joins Helidon 27 and Jipher 20 as new additions to the Oracle &lt;a href="https://www.oracle.com/java/technologies/downloads/jvp/" target="_blank" rel="noopener noreferrer"&gt;Java Verified Portfolio&lt;/a&gt;, delivering a &amp;ldquo;&lt;em&gt;metal rendering pipeline on macOS for smoother performance on modern Apple hardware&lt;/em&gt;&amp;rdquo;, enhanced text editing controls, and continued accessibility improvements.&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Alexander Matveev&lt;/strong&gt; integrated &lt;a href="https://marc.info/?l=openjdk-openjfx-dev&amp;amp;m=179004515064455&amp;amp;w=2" target="_blank" rel="noopener noreferrer"&gt;8331458: Replace qtdemux with MP4 demux based on Media Foundation&lt;/a&gt; in OpenJFX: &amp;ldquo;&lt;em&gt;Replaced &lt;code&gt;qtdemux&lt;/code&gt; with a Media Foundation-based MP4 demuxer on Windows. H.264 video from MP4 and fMP4 (HLS) is now decoded using Media Foundation instead of DirectShow. This change avoids several DirectShow issues encountered with the new MP4 demuxer and reduces implementation complexity.&lt;/em&gt;&amp;rdquo; The changeset also fixes 8305842 (video sometimes does not start when reinitializing on Windows 11). See &lt;a href="https://git.openjdk.org/jfx/pull/2206" target="_blank" rel="noopener noreferrer"&gt;PR #2206&lt;/a&gt; and &lt;a href="https://git.openjdk.org/jfx/commit/67f70684baa3f6168c9c0183e588c6d294d9f65d" target="_blank" rel="noopener noreferrer"&gt;commit 67f70684&lt;/a&gt;.&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://mail-archive.com/openjfx-dev@openjdk.org/msg29755.html" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Michael Strauß&lt;/strong&gt; integrated a fix for rows disappearing in a TableView with a horizontal scrollbar&lt;/a&gt;: &amp;ldquo;&lt;em&gt;&lt;code&gt;VirtualFlow&lt;/code&gt; stores the scroll location in two values &amp;hellip; These two values can become inconsistent &amp;hellip; The patch is quite easy: it sets &lt;code&gt;absoluteOffset&lt;/code&gt; to zero when all cells fit.&lt;/em&gt;&amp;rdquo; See &lt;a href="https://git.openjdk.org/jfx/pull/2317" target="_blank" rel="noopener noreferrer"&gt;PR #2317&lt;/a&gt; and the &lt;a href="https://git.openjdk.org/jfx/commit/7f321a7015e001a2822b5b10e27701503acf0828" target="_blank" rel="noopener noreferrer"&gt;commit&lt;/a&gt;.&lt;/li&gt;&#10;&lt;li&gt;Public Service Announcement (PSA) from &lt;strong&gt;milchshakee&lt;/strong&gt; &lt;a href="https://www.reddit.com/r/JavaFX/comments/1wmmdmb/psa_starting_with_jdk27_you_do_no_longer_need_to/" target="_blank" rel="noopener noreferrer"&gt;on Reddit&lt;/a&gt;: starting with JDK 27, you no longer need a separate &lt;code&gt;Main&lt;/code&gt; class to launch a JavaFX application from the classpath, per &lt;a href="https://bugs.openjdk.org/browse/JDK-8248122" target="_blank" rel="noopener noreferrer"&gt;JDK-8248122&lt;/a&gt;.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="applications"&gt;Applications&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://www.reddit.com/r/JavaFX/comments/1w0rmqc/i_made_a_local_music_player/" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Former_Weather_1174&lt;/strong&gt; made a local music player&lt;/a&gt;. &amp;ldquo;&lt;em&gt;I&amp;rsquo;ve made a local music player based on JavaFX. Although it&amp;rsquo;s still quite rudimentary, it already has all the necessary functions. I think some people might be interested in it. Here is the link to the &lt;a href="https://github.com/Muimi272/Kimusic" target="_blank" rel="noopener noreferrer"&gt;GitHub repository: Kimusic&lt;/a&gt;.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.linkedin.com/posts/helal-anwar-94571016b_java-javafx-opencv-ugcPost-7502853372006432768-VXi5/" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Helal Anwar&lt;/strong&gt; shared a video of Passport Studio FX&lt;/a&gt;, a desktop application to simplify passport and ID photo preparation for local photo studios and print shops. It provides AI-powered background removal with MODNet and ONNX Runtime, manual cropping with passport-size aspect ratios, custom background colors, zoom controls, standard photo size presets, and A4 print-sheet generation with cutting borders. The tech stack is Java, JavaFX, FXML, OpenCV, ONNX Runtime, MODNet, Apache PDFBox, Maven, and jpackage for the Windows build. All images are processed locally, so nothing gets uploaded to the cloud.&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.reddit.com/r/JavaFX/comments/1wal3zv/4_years_developing_im_proud_to_announce_numehub/" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;LooseCartographer989&lt;/strong&gt; announced NumeHub on Reddit&lt;/a&gt;, claiming it is &lt;em&gt;&amp;ldquo;the largest JavaFX application ever built&amp;rdquo;&lt;/em&gt;: &amp;ldquo;&lt;em&gt;Four years ago I opened a JavaFX project to see how far the platform would go before it broke. It never broke. So I kept going.&lt;/em&gt;&amp;rdquo; NumeHub is a single desktop app that bundles projects, CRM, a point-of-sale system, WhatsApp and email campaigns, a file explorer, a browser and system monitoring, with an AI agent (built on MCP tools) on top that answers questions by voice or text. &amp;ldquo;&lt;em&gt;Millions of nodes. Under half a gig of RAM. A new release every week.&lt;/em&gt;&amp;rdquo; Runs on Windows and macOS (Apple Silicon and Intel) in English, Portuguese, Chinese and German; Linux is planned if there is demand. It&amp;rsquo;s not open source and &lt;a href="https://nume.solutions/download" target="_blank" rel="noopener noreferrer"&gt;downloads are here&lt;/a&gt;. The thread turned into a fun &amp;ldquo;who has the biggest JavaFX app&amp;rdquo; contest, with &lt;strong&gt;PartOfTheBotnet&lt;/strong&gt; (9 years, 5,440 commits), &lt;strong&gt;_DystopianSnowman&lt;/strong&gt; (13 years, ~90k LOC) and &lt;strong&gt;Siedlerchr&lt;/strong&gt; weighing in for JabRef.&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.reddit.com/r/JavaFX/comments/1wi4552/sharing_my_tiny_project_please_check_it_out/" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Thunder_ZEK&lt;/strong&gt; shared his tiny project on Reddit&lt;/a&gt;, Memento: &amp;ldquo;&lt;em&gt;It&amp;rsquo;s an application where you are asked 100 questions&amp;hellip; about your life, and answers to these 100 questions are basically in depth information about you and your life. So after answering you can download a PDF and share this to anybody.&lt;/em&gt;&amp;rdquo; Built with JDK 17, JavaFX 17, SQLite and OpenPDF, with all data staying on your device unless you export it. The &lt;a href="https://github.com/Savirar0/Memento" target="_blank" rel="noopener noreferrer"&gt;sources are on GitHub&lt;/a&gt;. He learned JavaFX from YouTube tutorials and built this over a few months to show he had picked it up - a Windows installer is included, but &amp;ldquo;&lt;em&gt;it&amp;rsquo;s only working on my laptop lol.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;The &lt;strong&gt;JabRef Team&lt;/strong&gt; released &lt;a href="https://github.com/JabRef/jabref/releases/tag/v6.0-beta.1" target="_blank" rel="noopener noreferrer"&gt;JabRef 6.0-beta.1&lt;/a&gt;, the first beta of the next major version of the JavaFX-based BibTeX/BibLaTeX reference manager. Highlights: almost everything is now navigable by keyboard with visual indicators, a fetcher for Software Heritage identifiers (SWHID), the community themes from &lt;a href="https://themes.jabref.org/" target="_blank" rel="noopener noreferrer"&gt;themes.jabref.org&lt;/a&gt; (Everforest, Nord, Papers, Chocolate Honey and more) selectable from the preferences with preview images, per-tab icons, and automatic reconnection to shared databases. &lt;a href="https://github.com/JabRef/jabref" target="_blank" rel="noopener noreferrer"&gt;Project on GitHub&lt;/a&gt;.&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;NURI&lt;/strong&gt; demoed &lt;a href="https://www.youtube.com/watch?v=Cpjn4AeTFa0" target="_blank" rel="noopener noreferrer"&gt;StarLore, a gamified astronomy RPG desktop application&lt;/a&gt;: &amp;ldquo;&lt;em&gt;StarLore is a JavaFX-based desktop application that combines astronomy, mythology, exploration, and interactive gaming.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="components-libraries-tools"&gt;Components, Libraries, Tools&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;strong&gt;Erik Costlow&lt;/strong&gt; wrote a post on InfoQ about &lt;a href="https://www.infoq.com/news/2026/08/flexgantfx/" target="_blank" rel="noopener noreferrer"&gt;FlexGanttFX going Open Source&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Dirk Lemmerman has open sourced FlexGanttFX, a resource-scheduling framework for generating Gantt charts. Lemmerman open sourced the library after 15 years as a way of increasing availability of the code for use while using the AGPL license as a way to address project maintenance.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.reddit.com/r/JavaFX/comments/1wjc3zr/luvml_21_is_on_maven_central_a_typesafe_java_dsl/" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Guilty_Village_958&lt;/strong&gt; announced on Reddit&lt;/a&gt; that luvml 2.1 is on Maven Central, &amp;ldquo;&lt;em&gt;a type-safe Java DSL that treats your HTML, CSS, and Vue templates as one typed authoring language instead of three.&lt;/em&gt;&amp;rdquo; The one to watch for JavaFX developers is the sibling project &lt;a href="https://github.com/luvml/luvjfx" target="_blank" rel="noopener noreferrer"&gt;luvjfx&lt;/a&gt;, &amp;ldquo;&lt;em&gt;a terse, type-safe construction DSL for JavaFX&lt;/em&gt;&amp;rdquo;: nested calls instead of imperative setup, with the property methods machine-generated from JavaFX itself by reflection (367 capabilities across 51 node types), built-in one-way and two-way binding, and an escape hatch to the raw JavaFX API. No releases yet, so no Maven coordinates for luvjfx for now.&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/chadpreisler.bsky.social/post/3mvpxdc3m622z" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Chad Preisler&lt;/strong&gt; needed a sorted list that stays usable at scale&lt;/a&gt;: &amp;ldquo;&lt;em&gt;I needed a sorted list in #JavaFX that could show millions of records in a TableView and still be usable.&lt;/em&gt;&amp;rdquo; The &lt;a href="https://github.com/jfxmodules/mods" target="_blank" rel="noopener noreferrer"&gt;mods&lt;/a&gt; project - &amp;ldquo;&lt;em&gt;New components for JavaFX or enhancements to existing JavaFX functionality&lt;/em&gt;&amp;rdquo; - was created several years ago, but recently got some threading fixes, improved string sorting and usage information in the readme.&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Florian Enner&lt;/strong&gt; published the article behind the video we linked &lt;a href="https://www.jfx-central.com/links/2026-09-18" target="_blank" rel="noopener noreferrer"&gt;last week&lt;/a&gt;: &lt;a href="https://ennerf.github.io/2026/09/18/JavaFX-27-Native-Image-on-a-Raspberry-Pi-5.html" target="_blank" rel="noopener noreferrer"&gt;JavaFX 27 as a GraalVM Native Image on a Raspberry Pi 5&lt;/a&gt;. It compares Gluon Substrate (still on GraalVM 23 CE and JavaFX 21), BellSoft&amp;rsquo;s Liberica NIK, and his own &lt;a href="https://github.com/HebiRobotics/jfx-static-feature" target="_blank" rel="noopener noreferrer"&gt;StaticFX&lt;/a&gt;, which &amp;ldquo;&lt;em&gt;runs as a regular GraalVM Feature on the stock toolchain&lt;/em&gt;&amp;rdquo; and keeps all JavaFX modules working, including Media and Web. For the AtlantaFX Sampler on a Raspberry Pi 5, the time to the first window drops from 3.6s with jlink to 0.5s, and memory use after visiting all pages from 1,424 MB to 634 MB, in a binary of about 33 MB. The missing reachability metadata remains the biggest hurdle, &amp;ldquo;&lt;em&gt;but IMO the payoff is worth pushing through the initial barrier.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Dirk Lemmermann&lt;/strong&gt; released &lt;a href="https://github.com/dlsc-software-consulting-gmbh/GemsFX/releases/tag/v4.5.0" target="_blank" rel="noopener noreferrer"&gt;GemsFX 4.5.0&lt;/a&gt;: &lt;code&gt;DialogPane&lt;/code&gt; gains a cancellable dialog feature so dialogs can be closed with the ESC key or a dedicated cancel button, the busy button was removed from &lt;code&gt;PowerPaneApp&lt;/code&gt; to streamline the dialog options, and &lt;code&gt;SVGUtil&lt;/code&gt; now uses a default loader context with jsvg updated to 2.2.0. &lt;a href="https://github.com/dlsc-software-consulting-gmbh/GemsFX" target="_blank" rel="noopener noreferrer"&gt;Project on GitHub&lt;/a&gt;.&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;mkpaz&lt;/strong&gt; released &lt;a href="https://github.com/mkpaz/atlantafx/releases/tag/v3.0.0" target="_blank" rel="noopener noreferrer"&gt;AtlantaFX 3.0.0&lt;/a&gt;, a major update to the JavaFX theme collection: adds window decorations, a Scene Builder plugin, a theme manager, and a new Sidebar component. See the &lt;a href="https://github.com/mkpaz/atlantafx/releases/tag/v3.0.0" target="_blank" rel="noopener noreferrer"&gt;release and changelog&lt;/a&gt;.&lt;/li&gt;&#10;&lt;li&gt;The &lt;strong&gt;Techsenger&lt;/strong&gt; team introduced &lt;a href="https://github.com/techsenger/patternfx" target="_blank" rel="noopener noreferrer"&gt;PatternFX&lt;/a&gt; on &lt;a href="https://www.reddit.com/r/JavaFX/comments/1wkqrsf/patternfx_mvc_mvp_mvvm_templates_for_javafx/" target="_blank" rel="noopener noreferrer"&gt;Reddit&lt;/a&gt;: a framework providing MVC, MVP, and MVVM templates sharing a common architectural foundation. It models a window as a tree of dynamically composable components, each built with one of the three templates, and organizes inter-component communication through type-safe &amp;ldquo;ports&amp;rdquo; instead of a bus. Other features include component lifecycle support, component inheritance, history preservation, component-level logging, and an FXML-free design, with a demo implementing the same example in all three templates. Their &lt;a href="https://github.com/techsenger/shellfx" target="_blank" rel="noopener noreferrer"&gt;ShellFX&lt;/a&gt; platform is built on top of it.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="podcasts-videos-books"&gt;Podcasts, Videos, Books&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/starbuxman.joshlong.com/post/3muyzvqkb6r23" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Josh Long&lt;/strong&gt; published two videos&lt;/a&gt; on combining Spring Boot, JavaFX, GraalVM native images and Spring Security to build desktop applications: &amp;ldquo;&lt;em&gt;native, lightning-fast, dynamic, efficient, reusable desktop applications that run well on Mac, Windows, and Linux, and look amazing, while taking small fractions of the RAM of a similar Electron-based application&lt;/em&gt;&amp;rdquo;. Also mentioned in &lt;a href="https://spring.io/blog/2026/09/08/this-week-in-spring-september-8th-2026" target="_blank" rel="noopener noreferrer"&gt;This Week in Spring, September 8th, 2026&lt;/a&gt;.&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://youtu.be/Od2NDwHED58" target="_blank" rel="noopener noreferrer"&gt;The Ultimate Desktop Client Stack: Building High-Performance Apps with Spring Boot &amp;amp; JavaFX&lt;/a&gt; shows how to use Spring Boot and JavaFX together, &amp;ldquo;&lt;em&gt;so that you get the component model, event dispatch subsystem, internationalization, lifecycle management, and, of course, the entire and very rich ecosystem of Spring components and can use them to manage JavaFX components, too&lt;/em&gt;&amp;rdquo;, and ends with native image compilation.&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://youtu.be/gB7FIbxMEos" target="_blank" rel="noopener noreferrer"&gt;Build Secure Desktop Apps with JavaFX, Spring Boot &amp;amp; PKCE OAuth 2.0&lt;/a&gt; looks at using Spring Security&amp;rsquo;s OAuth client in the context of a desktop application, &amp;ldquo;&lt;em&gt;which can not, by definition, hold a client secret&lt;/em&gt;&amp;rdquo;.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Florian Enner&lt;/strong&gt; published a short video, &lt;a href="https://www.youtube.com/watch?v=GA_iAnxznO8" target="_blank" rel="noopener noreferrer"&gt;JavaFX 27 Native Image running AtlantaFX Sampler on Raspberry Pi 5&lt;/a&gt;, showing the AtlantaFX Sampler - which uses all controls and nearly all features JavaFX offers - as an ahead-of-time (AOT) compiled JavaFX 27 Native Image created with the latest Oracle GraalVM 25.3: &amp;ldquo;&lt;em&gt;Everything works, including javafx.media, javafx.web, as well as the desktop integration to open files.&lt;/em&gt;&amp;rdquo; The native image is built with his &lt;a href="https://github.com/HebiRobotics/jfx-static-feature" target="_blank" rel="noopener noreferrer"&gt;jfx-static-feature&lt;/a&gt;, a GraalVM Feature that statically links the JavaFX native code into a standalone executable, with support for rich text, WebView and media on Windows, Linux and macOS, on both Intel and ARM.&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://youtu.be/76pWS0WFu_U" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Artistic_Solution117&lt;/strong&gt; shared a video&lt;/a&gt; of a &amp;ldquo;&lt;em&gt;Second test of Java-EARTH-GLOBE-1. Pure JavaFX Google Earth / Nasa Worldwind like viewer in a single shot. On-the-fly on the JVM were the agent runs. Built with gemini 3.8 flash with 24-core raytracing and local disk caching&lt;/em&gt;&amp;rdquo;.&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/chadpreisler.bsky.social/post/3mvpvd2towc2z" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Chad Preisler&lt;/strong&gt; shared a demo video of a pure JavaFX Kafka client&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Check out my Pure #JavaFX Kafka Client application. This project has come a long way since I first showed it. I find it incredibly useful. I hope you like it.&lt;/em&gt;&amp;rdquo; The &lt;a href="https://youtu.be/lsiJBYTlxVs" target="_blank" rel="noopener noreferrer"&gt;Visual Kafka (VK) Demo&lt;/a&gt; walks through the result on the &lt;strong&gt;Chad Preisler&lt;/strong&gt; YouTube channel. We linked a very early version of this, then still &amp;ldquo;a very basic Kafka topic viewer&amp;rdquo;, back in &lt;a href="https://www.jfx-central.com/links/2023-02-24" target="_blank" rel="noopener noreferrer"&gt;February 2023&lt;/a&gt;.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="tutorials"&gt;Tutorials&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://rottenwifi.com/creating-a-simple-3d-platformer-game-using-javafx/" target="_blank" rel="noopener noreferrer"&gt;Creating a Simple 3D Platformer Game Using JavaFX&lt;/a&gt; is a step-by-step guide by the &lt;strong&gt;RottenWiFi Team&lt;/strong&gt; that builds a playable 3D platformer prototype with a player character, multiple platforms, gravity, WASD movement and jumping, axis-aligned bounding-box collision detection, respawning after a fall, and a goal platform. It starts from a Maven setup and camera configuration and works through frame-rate-independent movement and per-axis collision resolution. The focus is on the fundamentals — scene graphs, coordinate systems and physics — rather than on production tooling, as &amp;ldquo;&lt;em&gt;JavaFX is a framework for desktop applications with 3D graphics features, not a complete commercial game engine&lt;/em&gt;&amp;rdquo;.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="miscellaneous"&gt;Miscellaneous&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://www.reddit.com/r/javahelp/comments/1wckpbm/building_a_javafx_hibernate_talent_acquisition/" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Nirvex1&lt;/strong&gt; is looking for advice on Reddit&lt;/a&gt; while building a desktop Talent Acquisition System with Java 11, JavaFX, Maven, Hibernate and MariaDB: &amp;ldquo;&lt;em&gt;One of the more challenging parts so far has been managing around 17 different FXML views and connecting all of them properly with their controllers. I also had to spend quite a bit of time understanding &lt;code&gt;module-info.java&lt;/code&gt;, resource paths, and how everything fits together in a modular JavaFX application. Thankfully, that part is finally stable.&lt;/em&gt;&amp;rdquo; The questions are about Hibernate session management and &lt;code&gt;LazyInitializationException&lt;/code&gt;, how to run database queries without freezing the UI, and which threading patterns and architectural choices keep a large multi-view JavaFX application maintainable. The first answers mostly argue for putting a backend service between the desktop client and the database instead of connecting to it directly.&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.reddit.com/r/JavaFX/comments/1wjhtou/how_can_javafx_attract_more_developers/" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;enthalpyzx&lt;/strong&gt; started a discussion on Reddit&lt;/a&gt;, &amp;ldquo;How can JavaFX attract more developers?&amp;rdquo;, from the perspective of someone who hasn&amp;rsquo;t written a JavaFX application yet but likes what they see: &amp;ldquo;&lt;em&gt;I&amp;rsquo;ve noticed that JavaFX is very capable of doing incredible things that I had never imagined.&lt;/em&gt;&amp;rdquo; The open questions are how multiplatform JavaFX really is, whether applications can look native on every desktop (with &lt;a href="https://www.jfx-central.com/libraries/atlantafx" target="_blank" rel="noopener noreferrer"&gt;AtlantaFX&lt;/a&gt; mentioned as the likely answer, next to wrappers like Java-GI and QtJambi), why things like tray icons and notifications still need AWT, and above all the lack of a single recommended way of working: &amp;ldquo;&lt;em&gt;I would like Gluon or Oracle to stand up and say: look, this is how things work now, this is how you work for desktop apps, this is how you work for mobile apps, this is the library you have to use.&lt;/em&gt;&amp;rdquo; Also asked: are &lt;a href="https://www.jfx-central.com/books/definitiveguide2modernjavaclients" target="_blank" rel="noopener noreferrer"&gt;The Definitive Guide to Modern Java Clients with JavaFX&lt;/a&gt; and &lt;a href="https://www.jfx-central.com/books/learnjfx17" target="_blank" rel="noopener noreferrer"&gt;Learn JavaFX 17&lt;/a&gt; a good starting point?&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.reddit.com/r/JavaFX/comments/1wp4u70/javafx_in_the_browser/" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;indyjoe&lt;/strong&gt; asked on Reddit&lt;/a&gt; for good options to run JavaFX in the browser with minimal rewriting, still allowing a desktop version, supporting a large per-client data model, and scaling to hundreds of concurrent users. The discussion weighs WebFX (promising but limited control support and mostly a one-person project), CheerpJ (good for AWT/Swing, no timeline for JavaFX), Gluon (an old prototype not being updated without funded support), JPro (server-side rendering, a concern for apps with large per-user data), and whether a GraalVM-to-WASM path is even possible.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="jfx-central"&gt;JFX Central&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;The JavaFX Links Of The Week of August got &lt;a href="https://foojay.io/today/javafx-links-of-august-2026/"&gt;bundled and published on Foojay.io&lt;/a&gt;.&lt;/li&gt;&#10;&lt;li&gt;New content on JFX Central:&#10;&lt;ul&gt;&#10;&lt;li&gt;People: &lt;a href="https://www.jfx-central.com/people/j.long" target="_blank" rel="noopener noreferrer"&gt;Josh Long&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;Videos by Josh:&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://www.jfx-central.com/videos/Od2NDwHED58" target="_blank" rel="noopener noreferrer"&gt;The Ultimate Desktop Client Stack: Building High-Performance Apps with Spring Boot &amp;amp; JavaFX&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.jfx-central.com/videos/gB7FIbxMEos" target="_blank" rel="noopener noreferrer"&gt;Build Secure Desktop Apps with JavaFX, Spring Boot &amp;amp; PKCE OAuth 2.0&lt;/a&gt;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;li&gt;Tutorials based on these videos:&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://www.jfx-central.com/learn-javafx/spring-boot" target="_blank" rel="noopener noreferrer"&gt;JavaFX and Spring Boot&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.jfx-central.com/learn-javafx/spring-boot-oauth" target="_blank" rel="noopener noreferrer"&gt;Securing a JavaFX desktop application with Spring Security and OAuth 2.0&lt;/a&gt;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;/ul&gt;</description></item><item><title>One Base URL, Many Coding Agents: What an OpenAI-Compatible Gateway Looks Like From java.net.http</title><link>https://foojay.io/today/one-base-url-many-coding-agents-what-an-openai-compatible-gateway-looks-like-from-java-net-http/</link><pubDate>Wed, 09 Sep 2026 16:09:53 +0000</pubDate><guid>https://foojay.io/today/one-base-url-many-coding-agents-what-an-openai-compatible-gateway-looks-like-from-java-net-http/</guid><description>&lt;p&gt;Somewhere in every coding agent there is an HTTP client. Claude Code, Codex, Cursor, Cline, OpenCode: strip away the terminal UI or the editor pane and each of them serializes a conversation into JSON, POSTs it to a base URL with an API key in a header, and streams the answer back. The client owns the prompt assembly, the tool loop and the rendering; the model sits on the far side of that socket.&lt;/p&gt;</description></item><item><title>Debugging Is Invariant Discovery: What One Kafka Session Taught Us About AI Agents</title><link>https://foojay.io/today/debugging-is-invariant-discovery-what-one-kafka-session-taught-us-about-ai-agents/</link><pubDate>Tue, 08 Sep 2026 14:14:36 +0000</pubDate><guid>https://foojay.io/today/debugging-is-invariant-discovery-what-one-kafka-session-taught-us-about-ai-agents/</guid><description>&lt;p&gt;Every Java team has a sentence like this one somewhere:&lt;/p&gt;&#10;&lt;p&gt;&lt;strong&gt;Any operation on a TID must go through the single asynchronous path and must not let TMS and EMV drift apart.&lt;/strong&gt;&lt;/p&gt;&#10;&lt;p&gt;It is the kind of rule that is obvious once said and invisible until then. A terminal ID (TID) in a payments system, an asynchronous pipeline that updates two downstream systems, and the requirement that the two never disagree. Nothing in the type system enforces a rule like that, and no single class owns it. Rules of this kind live between consumers, services and stores.&lt;/p&gt;</description></item><item><title>“Commit created” — but it isn’t: why the agent’s word needs external verification, and what the mistake costs</title><link>https://foojay.io/today/commit-created-no-no-no-what-the-the-agents-word-needs-external-verification-what-the-mistake-costs/</link><pubDate>Tue, 08 Sep 2026 08:54:03 +0000</pubDate><guid>https://foojay.io/today/commit-created-no-no-no-what-the-the-agents-word-needs-external-verification-what-the-mistake-costs/</guid><description>&lt;p&gt;&lt;em&gt;&lt;strong&gt;A detailed report reads like proof. The agent lists the files it touched, names the branch, quotes a commit hash, adds a test count and closes with &amp;ldquo;done&amp;rdquo;. The work has a shape. The shape looks right. You have six more tickets.&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;&#10;&lt;p&gt;The report is model output. The commit, if it exists, lives in .git. The file, if it exists, lives on disk. The build result lives in a process exit code and a run log. The chat window is none of those places, and it can only vouch for itself.&lt;/p&gt;</description></item><item><title>Did Your AI Agent Ever Run a Debugger? One JVM Bug, Two Agent Runs</title><link>https://foojay.io/today/did-your-ai-agent-run-the-debugger-one-jvm-bug-two-agent-runs/</link><pubDate>Thu, 03 Sep 2026 13:48:32 +0000</pubDate><guid>https://foojay.io/today/did-your-ai-agent-run-the-debugger-one-jvm-bug-two-agent-runs/</guid><description>&lt;p&gt;Java developers reach for the debugger without thinking about it. Set a breakpoint, run the failing test, look at the variables, then decide what to change.&lt;/p&gt;&#10;&lt;p&gt;Most AI coding agents I have watched skip that step. They read the stack trace, read the source, and propose a patch. The reasoning can look excellent and still be a guess about a program nobody ran.&lt;/p&gt;&#10;&lt;p&gt;I wanted to know what that guess costs. So I took one real JVM bug, one model, one prompt, and ran it twice with two debugging workflows. Here is what the two transcripts show.&lt;/p&gt;</description></item><item><title>JavaFX Links of August 2026</title><link>https://foojay.io/today/javafx-links-of-august-2026/</link><pubDate>Mon, 31 Aug 2026 12:58:02 +0000</pubDate><guid>https://foojay.io/today/javafx-links-of-august-2026/</guid><description>&lt;p&gt;Here are the JavaFX LinksOfTheMonth of August 2026. We took a summer break, so there was only one &amp;ldquo;Links Of The Week&amp;rdquo; this month, and it covers all of August. We hope you had a great summer and are ready for more JavaFX news in the coming weeks!&lt;/p&gt;&#10;&lt;p&gt;You can find the weekly lists on &lt;a href="https://www.jfx-central.com/links" target="_blank" rel="noopener noreferrer"&gt;jfx-central.com&lt;/a&gt;. Did we miss anything? Is there anything you want to have included in one of the next overviews? Let us know via &lt;a href="mailto:links@jfx-central.com"&gt;links@jfx-central.com&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>Sheetmusic4J 0.0.3: ABC Notation, Guitar Pro, Engraving Improvements</title><link>https://foojay.io/today/sheetmusic4j-0-0-3-abc-notation-guitar-pro-engraving-improvements/</link><pubDate>Thu, 06 Aug 2026 08:26:00 +0000</pubDate><guid>https://foojay.io/today/sheetmusic4j-0-0-3-abc-notation-guitar-pro-engraving-improvements/</guid><description>&lt;p&gt;Last week I &lt;a href="https://foojay.io/today/introducing-sheetmusic4j-a-javafx-library-to-render-and-interact-with-sheet-music/"&gt;introduced Sheetmusic4J&lt;/a&gt;, a Java(FX) library to render and interact with sheet music. That first &lt;strong&gt;0.0.1&lt;/strong&gt; release was really a question more than a product: is there any interest in a native Java(FX) sheet music library before I invest more time in it? So I shared it on social media and waited to see what would come back.&lt;/p&gt;&#10;&lt;p&gt;The answers arrived faster than I expected. And they gave me more homework&amp;hellip;&lt;/p&gt;</description></item><item><title>JavaFX Links of July 2026</title><link>https://foojay.io/today/javafx-links-of-july-2026/</link><pubDate>Fri, 31 Jul 2026 16:18:46 +0000</pubDate><guid>https://foojay.io/today/javafx-links-of-july-2026/</guid><description>&lt;p&gt;Here are the JavaFX LinksOfTheMonth of July 2026. You can find the weekly lists on &lt;a href="https://www.jfx-central.com/links" target="_blank" rel="noopener noreferrer"&gt;jfx-central.com&lt;/a&gt;. Did we miss anything? Is there anything you want to have included in one of the next overviews? Let us know via &lt;a href="mailto:links@jfx-central.com"&gt;links@jfx-central.com&lt;/a&gt;.&lt;/p&gt;&#10;&lt;h2 id="core"&gt;Core&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;From the OpenJFX mailing list: &lt;a href="https://mail-archive.com/openjfx-dev@openjdk.org/msg27455.html" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Marius Hanl&lt;/strong&gt; was appointed as a new OpenJFX Reviewer&lt;/a&gt;, as announced by &lt;strong&gt;Michael Strauß&lt;/strong&gt; on July 4, 2026. Marius has been an active contributor to the OpenJFX project, most recently submitting the &lt;a href="https://github.com/openjdk/jfx/pull/2191" target="_blank" rel="noopener noreferrer"&gt;Stylesheet/StyleClass lazy initialization PR&lt;/a&gt; and leading tests improvements.&lt;/li&gt;&#10;&lt;li&gt;From the OpenJFX mailing list: &lt;strong&gt;Kevin Rushforth&lt;/strong&gt; &lt;a href="https://mail-archive.com/openjfx-dev@openjdk.org/msg27475.html" target="_blank" rel="noopener noreferrer"&gt;opened the review for the JavaFX 26.0.2 release notes&lt;/a&gt; for the upcoming update release (planned July 21, 2026).&lt;/li&gt;&#10;&lt;li&gt;From the OpenJFX mailing list: &lt;a href="https://mail.openjdk.org/archives/list/openjfx-dev@openjdk.org/thread/AOVTJA6A2RICNI26PIN4SL65IB3EYOYR/" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Kevin Rushforth&lt;/strong&gt; announced that JavaFX 27 is now in Rampdown Phase One (RDP1)&lt;/a&gt;: &amp;ldquo;&lt;em&gt;We have forked a new jfx27 branch for stabilizing the JavaFX 27 release. The master branch of the jfx repo is now open for jfx28, and the jfx27 branch is open for integrating fixes that meet the RDP1 criteria.&lt;/em&gt; &amp;quot; New stabilization branch: &lt;a href="https://github.com/openjdk/jfx/tree/jfx27" target="_blank" rel="noopener noreferrer"&gt;github.com/openjdk/jfx/tree/jfx27&lt;/a&gt;.&lt;/li&gt;&#10;&lt;li&gt;Early-Access Builds of JavaFX 27 (to be released in September) are available on &lt;a href="https://jdk.java.net/javafx27/" target="_blank" rel="noopener noreferrer"&gt;jdk.java.net/javafx27&lt;/a&gt; and from the &lt;a href="https://gluonhq.com/products/javafx/#downloads" target="_blank" rel="noopener noreferrer"&gt;Gluon website&lt;/a&gt;.&lt;/li&gt;&#10;&lt;li&gt;Both JavaFX 26 and 27 need at least JDK 24 to run.&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://mastodon.social/@johanvos/116959466935866723" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Johan Vos&lt;/strong&gt; announced&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Gluon&amp;rsquo;s JavaFX CPU builds for JavaFX 17/21/25/26 are available now.&lt;/em&gt; &amp;quot; All details and download links are available in the post &lt;a href="https://gluonhq.com/news/2026-07-21-july-2026-critical-patch-update/" target="_blank" rel="noopener noreferrer"&gt;July 2026 Critical Patch Update: Essential Security and Stability Fixes for OpenJFX&lt;/a&gt;.&#10;&lt;ul&gt;&#10;&lt;li&gt;With a &lt;a href="https://mastodon.social/@johanvos/116963618524653211" target="_blank" rel="noopener noreferrer"&gt;follow-up message&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Important: we (Gluon) provide all those builds (with CPU patches) for free. We love JavaFX and the community, but it&amp;rsquo;s a fair amount of work to do this. If you benefit from these builds, you may consider supporting us by bying LTS subscriptions (even if you can download them for free), contacting us for T&amp;amp;M work, and/or spreading this news. Thanks for keeping JavaFX a community effort.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;li&gt;New builds of JavaFX are also available from &lt;a href="https://jdk.java.net/javafx26/" target="_blank" rel="noopener noreferrer"&gt;jdk.java.net/javafx26&lt;/a&gt;.&lt;/li&gt;&#10;&lt;li&gt;Fixes and more info are also available in the &lt;a href="https://docs.azul.com/core/release-notes#openjfx-fixes-enhancements" target="_blank" rel="noopener noreferrer"&gt;Azul Core quarterly update release notes&lt;/a&gt;.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="applications"&gt;Applications&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://mastodon.online/@cryptomator/116834045668158756" target="_blank" rel="noopener noreferrer"&gt;Cryptomator Desktop 1.19.3 is available&lt;/a&gt; and includes JavaFX 25.0.3 for improved graphics handling and simplifies Windows file signing. &amp;ldquo;&lt;em&gt;&lt;a href="https://cryptomator.org/" target="_blank" rel="noopener noreferrer"&gt;Cryptomator&lt;/a&gt; secures and encrypts your sensitive data in your favorite cloud service. So you can rest assured that only you can access your data.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/rgiskard7.bsky.social/post/3mpeoz2ahns2u" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Eduardo Díaz Sánchez&lt;/strong&gt; announced Jylos 2.2.0&lt;/a&gt;: &amp;ldquo;&lt;em&gt;The biggest addition is a full Obsidian-compatible Canvas editor. &lt;a href="https://github.com/RGiskard7/jylos/releases/tag/v2.2.0" target="_blank" rel="noopener noreferrer"&gt;This release&lt;/a&gt; also adds note transclusion, rich links, CSS snippets and a redesigned private notes system.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/did:plc:jx7h5s74cqipmtc7zrb5224m/post/3mq6xaeph7c2p" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Frank Delporte&lt;/strong&gt; announced a new release of MelodyMatrix&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Looking at MIDI music is now possible in multiple languages with release 1.1.0 of MelodyMatrix. And the &lt;a href="https://melodymatrix.rocks/" target="_blank" rel="noopener noreferrer"&gt;website got totally reworked&lt;/a&gt;, is more flashy now, and also available in multiple languages. More updates coming soon&amp;hellip;&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://webtechie.be/post/a-new-website-for-melodymatrix-and-whats-new-in-release-1.1.0/" target="_blank" rel="noopener noreferrer"&gt;Blog post by &lt;strong&gt;Frank Delporte&lt;/strong&gt; related to the release of MelodyMatrix 1.1.0&lt;/a&gt; last week: &amp;ldquo;&lt;em&gt;Last week was busy for MelodyMatrix . The website got rebuilt from the ground up, and the app itself got a solid release with a handful of new features.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/rgiskard7.bsky.social/post/3mqrooiiask2k" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;RGiskard7&lt;/strong&gt; announced Jylos 2.4.6&lt;/a&gt;, the local-first knowledge management app with Markdown notes: &amp;ldquo;&lt;em&gt;The app is much more polished: better Canvas support, cleaner themes, improved PDFs, vault switching without restart, GitHub update checks and smoother Markdown workflows.&lt;/em&gt; &amp;quot; Check the &lt;a href="https://github.com/RGiskard7/jylos/releases/tag/v2.4.6" target="_blank" rel="noopener noreferrer"&gt;release notes on GitHub&lt;/a&gt;.&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.reddit.com/r/java/comments/1va4vsm/jextractgui_a_javafx_gui_wrapper_for_the_jextract/" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;nlisker&lt;/strong&gt; shared on Reddit&lt;/a&gt;: jextractGUI - A JavaFX GUI wrapper for the jextract tool. &amp;ldquo;&lt;em&gt;It&amp;rsquo;s written in JavaFX and embeds jextract (and its libclang) within it. Since jextract is in early-access, newer versions broke it and I needed to do some rewrites since I first conjured it a couple of years ago. It&amp;rsquo;s now aligned with the current latest build - 25-jextract+2-4 (2025/11/25).&lt;/em&gt; &amp;quot; Project is &lt;a href="https://github.com/nlisker/jextractGUI" target="_blank" rel="noopener noreferrer"&gt;available on GitHub&lt;/a&gt;.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="games"&gt;Games&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://dev.to/nice_application1_812753/daybreak-protocol-june-solstice-game-jam-submission-11fl" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Nice Application 1 (Udit)&lt;/strong&gt; submitted Daybreak Protocol to the DEV June Solstice Game Jam&lt;/a&gt;: &amp;ldquo;&lt;em&gt;A short, replayable JavaFX code-breaking game where daylight is both the player&amp;rsquo;s timer and reward. Repair six symbolic Bombe relays by solving puzzles based on Caesar shifts, XOR logic, run-length encoding, parity bits, contradiction elimination, and binary search. Every wrong answer visibly pushes the sun toward the horizon. The game celebrates Alan Turing&amp;rsquo;s legacy by presenting algorithms as creative tools.&lt;/em&gt; &amp;quot; Source code on &lt;a href="https://github.com/Nice-AU/Daybreak-Protocol" target="_blank" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt;.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="components-libraries-tools"&gt;Components, Libraries, Tools&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://webtechie.be/post/closing-the-visual-gap-between-the-official-lottie-webplayer-and-lottie4j/" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Frank Delporte&lt;/strong&gt; blogged about a big rendering upgrade for Lottie4J&lt;/a&gt;: &amp;ldquo;&lt;em&gt;My goal was to make the JavaFX output match the official LottieFiles web player as closely as possible, pixel for pixel. &amp;hellip; After the improvements, most of the animations used in the test now hit 99.5%+ similarity with the reference!&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://foojay.social/@lottie4j/116890414437899888" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Frank Delporte&lt;/strong&gt; released Lottie4J v1.2.5&lt;/a&gt; with many rendering accuracy fixes: &amp;ldquo;&lt;em&gt;The JavaFX animations are now more closely aligned with the official LottieFiles web player. Most test files reach the 99,5% similarity goal.&lt;/em&gt; &amp;quot; All info &lt;a href="https://lottie4j.com/status/2026/20260709-release-1.2.5/" target="_blank" rel="noopener noreferrer"&gt;on the website&lt;/a&gt;.&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/dlemmermann.bsky.social/post/3mqofheob222s" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Dirk Lemmermann&lt;/strong&gt; is reworking/improving his libraries&lt;/a&gt;: &amp;ldquo;&lt;em&gt;I fixed a major bug in HiddenSidesPane that prevented proper layout passes for children nodes. To get the fix start using the implementation found in GemsFX, do not use the one in ControlsFX. (btw: I moved several of my ControlsFX contributions to GemsFX in order to speed up development.)&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.reddit.com/r/JavaFX/comments/1upfocl/groovefx_dynamic_fxml_for_javafx_declarative/" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;rrangelox&lt;/strong&gt; published GrooveFX&lt;/a&gt;: Dynamic FXML for JavaFX, declarative iteration, conditionals and branching. &amp;ldquo;&lt;em&gt;I&amp;rsquo;m releasing GrooveFX, a small library that extends JavaFX FXML with declarative control structures: iteration, conditional rendering, and multi‑case branching directly inside FXML. The idea is simple: FXML is powerful but static — GrooveFX adds flow without replacing it and without introducing a DSL.&lt;/em&gt; &amp;quot; Check the &lt;a href="https://codeberg.org/rrangelo/groovefx" target="_blank" rel="noopener noreferrer"&gt;Codeberg repository&lt;/a&gt;.&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Frank Delporte&lt;/strong&gt; announced a new JavaFX library: Sheetmusic4J, an open-source Java library that parses MusicXML into Java objects and renders them as native JavaFX music sheet views. No WebView, no browser engine, no JavaScript bridge.&#10;&lt;ul&gt;&#10;&lt;li&gt;Website: &lt;a href="https://sheetmusic4j.com" target="_blank" rel="noopener noreferrer"&gt;sheetmusic4j.com&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;Source code: &lt;a href="https://github.com/sheetmusic4j/sheetmusic4j" target="_blank" rel="noopener noreferrer"&gt;github.com/sheetmusic4j/sheetmusic4j&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;Blog post and video with more info about the project &lt;a href="https://webtechie.be/post/introducing-sheetmusic4j-a-javafx-library-to-render-and-interact-with-sheet-music/" target="_blank" rel="noopener noreferrer"&gt;on webtechie.be&lt;/a&gt;.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://webtechie.be/post/sheetmusic4j-0.0.3-when-linkedin-comments-becomes-features/" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Frank Delporte&lt;/strong&gt; blogged about Sheetmusic4J 0.0.3&lt;/a&gt;: &amp;ldquo;&lt;em&gt;I released 0.0.1 as an open question: does anyone want a native Java(FX) sheet music library? Multiple LinkedIn comments, and some are answered now with support for ABC notation and Guitar Pro. Plus a big round of engraving improvements.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Eliezer Assunção De Paulo&lt;/strong&gt; &lt;a href="https://www.reddit.com/r/JavaFX/comments/1v8j29r/megalodonte_a_small_reactive_ui_framework_on_top/" target="_blank" rel="noopener noreferrer"&gt;announced Megalodonte&lt;/a&gt;, a small reactive UI framework on top of JavaFX. &amp;ldquo;&lt;em&gt;I&amp;rsquo;ve been building JavaFX desktop apps for a while and got tired of the usual boilerplate (manual listeners, imperative styling, no real component model), so I built Megalodonte: a thin reactive layer on top of JavaFX — React-ish component composition, State /ComputedState for reactivity, and a Props/Theme system so styling isn&amp;rsquo;t scattered setStyle() calls everywhere.&lt;/em&gt; &amp;quot; The project is &lt;a href="https://github.com/eliezer-dev-software-enginner/megalodonte-libs" target="_blank" rel="noopener noreferrer"&gt;available on GitHub&lt;/a&gt;.&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/dlemmermann.bsky.social/post/3mrmm435rt22t" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Dirk Lemmermann&lt;/strong&gt; shared&lt;/a&gt;: &amp;ldquo;&lt;em&gt;GemsFX 4.3.2 is out now with fixes for the PopOver control, with i18n resource bundles, and accessibility support. I was always too lazy for the last two things but with AI that has become a no-brainer &amp;hellip; literally &amp;hellip;. &amp;ldquo;no brain required&amp;rdquo;.&lt;/em&gt; &amp;quot; Check the project &lt;a href="https://github.com/dlsc-software-consulting-gmbh/GemsFX" target="_blank" rel="noopener noreferrer"&gt;on GitHub&lt;/a&gt;.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="podcasts-videos-books"&gt;Podcasts, Videos, Books&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;strong&gt;Helal Anwar&lt;/strong&gt; published a new &lt;a href="https://www.youtube.com/watch?v=XiHcp-WseBE" target="_blank" rel="noopener noreferrer"&gt;video with the progress he made in his student management app&lt;/a&gt;.&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/cupofcode.bsky.social/post/3mqadlpurrc2y" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Austin Lehman&lt;/strong&gt; announced&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Aussom CLI 1.2.0 is now available for download along the first free &lt;a href="https://aussom-lang.com/books" target="_blank" rel="noopener noreferrer"&gt;PDF book &amp;lsquo;Building Desktop Applications in Aussom with JavaFX&amp;rsquo;&lt;/a&gt;!&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/rabauer.dev/post/3mqyzcln42w24" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Johannes Rabauer&lt;/strong&gt; shared a video&lt;/a&gt;: &amp;ldquo;&lt;em&gt;If you are interested in playing around with midi devices and files, check out melodymatrix.rocks. It&amp;rsquo;s free and quite fun 🙂 &lt;strong&gt;Frank Delporte&lt;/strong&gt; built this with his son, which is such a great idea on it&amp;rsquo;s own! #JavaFX #MIDI #Piano&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="miscellaneous"&gt;Miscellaneous&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://www.reddit.com/r/scala/comments/1usp835/kyojfx_hello_world_template/" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;markehammons&lt;/strong&gt; shared &amp;ldquo;Kyo-JFX Hello World template&amp;rdquo; on Reddit&lt;/a&gt;: &amp;ldquo;&lt;em&gt;I was asked in another thread if I could provide an example of this, so &lt;a href="https://codeberg.org/markhammons/kyo-jfx-hello-world" target="_blank" rel="noopener noreferrer"&gt;here it is&lt;/a&gt;. This template is a hello world app using JavaFx + Kyo + Scala 3. It uses Gluon substrate as well as a Gluon fork of GraalVM to create native image builds that can run on Linux and Android.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;Keep an eye on the messages by &lt;a href="https://bsky.app/profile/cupofcode.bsky.social" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Austin Lehman&lt;/strong&gt; on Bluesky&lt;/a&gt; as he is sharing more info about the Aussom Programming Language, new releases, his book about Aussom, and scripts he is using to create documentation.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="jfx-central"&gt;JFX Central&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;New content on JFX Central:&#10;&lt;ul&gt;&#10;&lt;li&gt;Library: &lt;a href="https://www.jfx-central.com/libraries/sheetmusic4j" target="_blank" rel="noopener noreferrer"&gt;Sheetmusic4J&lt;/a&gt;, a Java library to parse MusicXML and render sheet music natively in JavaFX.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;li&gt;The JavaFX Links Of The Week of June got &lt;a href="https://foojay.io/today/javafx-links-of-june-2026/"&gt;bundled and published on Foojay.io&lt;/a&gt;.&lt;/li&gt;&#10;&lt;/ul&gt;</description></item><item><title>Introducing Sheetmusic4J, a Java(FX) Library to Render and Interact with Sheet Music</title><link>https://foojay.io/today/introducing-sheetmusic4j-a-javafx-library-to-render-and-interact-with-sheet-music/</link><pubDate>Thu, 30 Jul 2026 07:28:00 +0000</pubDate><guid>https://foojay.io/today/introducing-sheetmusic4j-a-javafx-library-to-render-and-interact-with-sheet-music/</guid><description>&lt;p&gt;I&amp;rsquo;m building &lt;a href="https://melodymatrix.rocks/" target="_blank" rel="noopener noreferrer"&gt;MelodyMatrix&lt;/a&gt; with my son, an application to look at and play along with music. The app already shows a song in different views: falling blocks, chords, guitar views, and many more. Now we want a Learn section, a view that helps someone practice piano by following the actual sheet music while it plays.&#10;&lt;img src="https://foojay.io/today/introducing-sheetmusic4j-a-javafx-library-to-render-and-interact-with-sheet-music/screenshot-melodymatrix-1024x641.jpg" alt="" width="1024" height="641" loading="lazy" decoding="async"&gt;&lt;/p&gt;&#10;&lt;p&gt;A static PDF of the sheet doesn&amp;rsquo;t work for that. Great PDF viewer components exist for JavaFX, but a PDF has no connection to what&amp;rsquo;s playing. Nothing highlights the current note, nothing marks the current position in the song. I looked for a JavaFX library that renders sheet music and lets code interact with it: jump to a position, highlight a note, follow playback. I couldn&amp;rsquo;t find one, so I built it.&lt;/p&gt;</description></item><item><title>Closing the Visual Gap Between the Official Lottie Webplayer and Lottie4J</title><link>https://foojay.io/today/closing-the-visual-gap-between-the-official-lottie-webplayer-and-lottie4j/</link><pubDate>Tue, 07 Jul 2026 08:25:55 +0000</pubDate><guid>https://foojay.io/today/closing-the-visual-gap-between-the-official-lottie-webplayer-and-lottie4j/</guid><description>&lt;p&gt;A Lottie library is only as good as its output looks. If an animation renders differently in &lt;a href="https://lottie4j.com/" target="_blank" rel="noopener noreferrer"&gt;Lottie4J&lt;/a&gt; than it does in the official web player, that&amp;rsquo;s a bug, even when no exception is thrown and the code looks correct.&lt;/p&gt;&#10;&lt;p&gt;Within the &lt;code&gt;fxfileviewer&lt;/code&gt;, there is an app to visually compare the result of the JavaFX player and a webview using the official JavaScript player. Problem is that I was using the JavaFX Web component for this and this doesn&amp;rsquo;t fully support the latest/best version of this player. Based on this app for manual checks, I also created a unit test which is able to loop over a set of files and compare the differences to make sure changes in the code don&amp;rsquo;t break the existing renderer. But I kept struggling with the same test file &lt;a href="https://github.com/lottie4j/lottie4j/tree/main/fxfileviewer/src/test/resources/json/interactive_mood_selector_ui.json" target="_blank" rel="noopener noreferrer"&gt;interactive_mood_selector_ui.json&lt;/a&gt; which didn&amp;rsquo;t render correctly, both in the JavaFX view and my web-based view to compare it with.&lt;/p&gt;</description></item><item><title>JavaFX Links of June 2026</title><link>https://foojay.io/today/javafx-links-of-june-2026/</link><pubDate>Tue, 30 Jun 2026 07:23:31 +0000</pubDate><guid>https://foojay.io/today/javafx-links-of-june-2026/</guid><description>&lt;p&gt;Here are the JavaFX LinksOfTheMonth of June 2026. You can find the weekly lists on &lt;a href="https://www.jfx-central.com/links" target="_blank" rel="noopener noreferrer"&gt;jfx-central.com&lt;/a&gt;. Did we miss anything? Is there anything you want to have included in one of the next overviews? Let us know via &lt;a href="mailto:links@jfx-central.com"&gt;links@jfx-central.com&lt;/a&gt;.&lt;/p&gt;&#10;&lt;h2 id="core"&gt;Core&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/johanvos.bsky.social/post/3mnans5s67c2u" target="_blank" rel="noopener noreferrer"&gt;Message by &lt;strong&gt;Johan Vos&lt;/strong&gt;&lt;/a&gt;: &amp;ldquo;&lt;em&gt;I&amp;rsquo;ve spent most of today (and the past few days) on JavaFX 17/21/25 LTS. It&amp;rsquo;s a lot of work, but almost a pleasure because the tools/procedures are so clear. Skara is extremely helpful with backports. And it&amp;rsquo;s deterministic. JavaFX is very well maintained.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;From the dev mailinglist: &lt;a href="https://github.com/openjdk/jfx/commit/738be0f10f8dbbbe182aa3d06ee86313fa181bb1" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Michael Strauß&lt;/strong&gt; integrated JDK-8385459&lt;/a&gt; in &lt;a href="https://github.com/openjdk/jfx/pull/2177" target="_blank" rel="noopener noreferrer"&gt;PR #2177&lt;/a&gt;: Animations should respect reducedMotion preference: &amp;ldquo;&lt;em&gt;Several JavaFX controls use animations to convey state changes, but none respected the reducedMotion accessibility preference. This change makes TableRowSkinBase, TitledPaneSkin, TabPaneSkin, PaginationSkin, and Charts honor Scene.Preferences.reducedMotion.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;Apparently, the JFX Adopters Meeting 2026 led to a pull request by &lt;strong&gt;Marius Hanl&lt;/strong&gt; in the OpenJFX repository: &lt;a href="https://github.com/openjdk/jfx/pull/2191" target="_blank" rel="noopener noreferrer"&gt;8386663: Stylesheet/StyleClass list should be lazily initialized&lt;/a&gt;. Thanks, &lt;a href="https://mastodon.acm.org/@koppor/116810873255149882" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Oliver Kopp&lt;/strong&gt; for sharing this info&lt;/a&gt;.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="applications"&gt;Applications&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Video by &lt;a href="https://bsky.app/profile/ingstudios.dev/post/3mncdhcnbds2f" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Ethan Lee&lt;/strong&gt;&lt;/a&gt;: &amp;ldquo;&lt;em&gt;I Built My Own Agentic AI Browser &lt;a href="https://turtlebrowse.ingstudios.dev/" target="_blank" rel="noopener noreferrer"&gt;Turtlebrowse&lt;/a&gt; now with Java CEF, Swing, and embedded JavaFX components. &lt;a href="https://www.youtube.com/watch?v=WzU8Cnl3kE0" target="_blank" rel="noopener noreferrer"&gt;Go watch it on YouTube&lt;/a&gt;.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/ingstudios.dev/post/3mondjccunc2o" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Ethan Lee&lt;/strong&gt; released Turtlebrowse v1.1.1&lt;/a&gt;, the open-source browser built to be agentic: &amp;ldquo;&lt;em&gt;This brings features like a multi-process architecture and custom profiles. It also brings patches for internal API errors. It uses Gemma4 under the hood, perfect for everyday tasks. Get it at &lt;a href="https://turtlebrowse.ingstudios.dev/" target="_blank" rel="noopener noreferrer"&gt;turtlebrowse.ingstudios.dev&lt;/a&gt;!&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.reddit.com/r/java/comments/1u10ble/created_a_simple_minimal_canvas_application_in/" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Gufran Thakur&lt;/strong&gt; created a simple, minimal Canvas Application in JavaFX&lt;/a&gt;: &amp;ldquo;&lt;em&gt;After like a year finally getting back to JavaFX, decided to make an excalidraw inspired app for fun. It&amp;rsquo;s a very minimal canvas app with basic features. &lt;a href="https://github.com/gufranthakur/ExplainFX" target="_blank" rel="noopener noreferrer"&gt;Source code is on ExplainFX&lt;/a&gt;. Features: Drawing, Create Squares and Circles, Text, Vary stroke size/font size,&amp;hellip; Please let me know if you have any questions!&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Max Xiong&lt;/strong&gt; continuous his &amp;ldquo;Building In Public&amp;rdquo; journey for his DataCollie application. &lt;a href="https://bsky.app/profile/maxiong.bsky.social/post/3mnulx7aomc2u" target="_blank" rel="noopener noreferrer"&gt;Follow him on Bluesky for regular updates and screenshots&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Tonight I implemented the custom UI styling for Project context menu items.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.reddit.com/r/JavaFX/comments/1u9hfn1/dropping_a_small_pdf_viewer_for_you_guys_javafx/" target="_blank" rel="noopener noreferrer"&gt;Found on Reddit, by &lt;strong&gt;xdsswar&lt;/strong&gt;&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Dropping a small PDF viewer for you guys (JavaFX + native PDFium). It&amp;rsquo;s done on native PDFium via Java&amp;rsquo;s FFM API (no PDFBox, no AWT). Has zoom, text selection, search, thumbnails, the usual, would love some feedback. &lt;a href="https://github.com/xdsswar/ultimate-pdf-viewer" target="_blank" rel="noopener noreferrer"&gt;Repo link&lt;/a&gt;.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.reddit.com/r/JavaFX/comments/1u5zjpo/i_built_jylos_a_localfirst_opensource_knowledge/" target="_blank" rel="noopener noreferrer"&gt;By &lt;strong&gt;RGiskard7&lt;/strong&gt;&lt;/a&gt;: &amp;ldquo;&lt;em&gt;I built Jylos, a local-first open-source knowledge management app using Java and JavaFX. It started as a personal project to explore desktop application architecture, JavaFX, Markdown processing and software design. Over time it evolved into a complete application with: Markdown notes with live preview, Wiki-links and backlinks, Interactive knowledge graph,&amp;hellip; Everything is stored locally. No accounts, no cloud backend and no telemetry. The &lt;a href="https://github.com/RGiskard7/jylos" target="_blank" rel="noopener noreferrer"&gt;project is open source&lt;/a&gt; under the MIT license and binaries are available for Windows, Linux and macOS. I&amp;rsquo;d really appreciate any feedback, especially from JavaFX developers.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.reddit.com/r/JavaFX/comments/1ua30k4/my_first_javafx_application/" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Mechanical-pasta&lt;/strong&gt; shared his &amp;ldquo;First JavaFx Application&amp;rdquo; on Reddit&lt;/a&gt;: &amp;ldquo;&lt;em&gt;I tried JavaFx, and, as a support project to learn the language, I&amp;rsquo;ve decided to build my own MineSweeper but with some differences. You can find it &lt;a href="https://github.com/TargolLagadec/MineSweeperTribute" target="_blank" rel="noopener noreferrer"&gt;here if you&amp;rsquo;re interested&lt;/a&gt;.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;In the &lt;a href="https://www.jfx-central.com/links/2026-05-29" target="_blank" rel="noopener noreferrer"&gt;Links Of The Week of 2026-05-29&lt;/a&gt;, we shared &amp;ldquo;DiskSpace&amp;rdquo;, a cross-platform disk space visualizer by &lt;strong&gt;Marcus Hirt&lt;/strong&gt; . In the blog post &lt;a href="https://hirt.se/blog/?p=1606" target="_blank" rel="noopener noreferrer"&gt;Using GraalVM, JavaFX and a Clanker to Build a Cross Platform Desktop App&lt;/a&gt;, he shares a lot of background information about the project, the architecture, and the build process.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="components-libraries-tools"&gt;Components, Libraries, Tools&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://www.reddit.com/r/JavaFX/comments/1tul6x8/live_property_editing_for_javafx_nodes_in_devtools/" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Striking_Creme864&lt;/strong&gt; shared a video on Reddit&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Live property editing for JavaFX nodes in DevTools. When building JavaFX applications, we often need not only to inspect a node&amp;rsquo;s properties, but also tweak them to see how they behave. Restarting the app every time to test small changes quickly becomes a major time sink. So we added live property editing directly to the DevTools in our platform (TabShell). The property editor supports three simple forms: basic values, enums, and Insets, but this made UI debugging and iteration much faster.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/dlemmermann.bsky.social/post/3mncofbca722s" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Dirk Lemmermann&lt;/strong&gt; shared screenshots&lt;/a&gt; of the new &lt;code&gt;StageStyle.EXTENDED&lt;/code&gt;: &amp;ldquo;&lt;em&gt;I recently updated the FlexGanttFX showcase application to use the new HeaderBar component and StageStyle.EXTENDED type. This results in a very clean and professional looking UI.&lt;/em&gt; &amp;quot;&#10;&lt;ul&gt;&#10;&lt;li&gt;You can also try it online at &lt;a href="https://demos.jpro.one/flexganttfx-showcase.html" target="_blank" rel="noopener noreferrer"&gt;demos.jpro.one/flexganttfx-showcase.html&lt;/a&gt; or install locally &lt;a href="https://www.jdeploy.com/~flexganttfxshowcase" target="_blank" rel="noopener noreferrer"&gt;via jdeploy&lt;/a&gt;.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Frank Delporte&lt;/strong&gt; released &lt;a href="https://lottie4j.com/releases/index.html" target="_blank" rel="noopener noreferrer"&gt;Lottie4J 1.2.4&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Fixed Lottie arc rendering: constrained the easing solver to prevent bezier curve divergence. Added bisection fallback for flat-point curves. Fixed full-circle trim path flickering caused by floating-point precision loss in offset wrapping. Fixed border rendering error. Added Pi4J test file.&lt;/em&gt; &amp;quot; Available on &lt;a href="https://central.sonatype.com/search?q=g:com.lottie4j" target="_blank" rel="noopener noreferrer"&gt;Maven Central&lt;/a&gt;.&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://plugins.jetbrains.com/plugin/32337-fxml-2-for-javafx" target="_blank" rel="noopener noreferrer"&gt;FXML/2 for JavaFX&lt;/a&gt;: IntelliJ IDE plugin for the &lt;a href="https://jfxcore.github.io/fxml-compiler/" target="_blank" rel="noopener noreferrer"&gt;FXML/2 markup format&lt;/a&gt;, supporting syntax highlighting, folding, formatting, EditorConfig-aware indentation, tag and attribute resolution, code completion, and navigation to JavaFX classes. Presented as &amp;ldquo;FXML 2.0: Write Markup, Ship Bytecode&amp;rdquo; by &lt;strong&gt;Michael Strauß&lt;/strong&gt; at the &lt;a href="https://www.zeiss.com/meditec/en/news-events/events/jfx-adopters-meeting-2026.html" target="_blank" rel="noopener noreferrer"&gt;JFX Adopters Meeting&lt;/a&gt;.&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Jonathan S. Fisher&lt;/strong&gt; is working on &lt;a href="https://github.com/exabrial/difx" target="_blank" rel="noopener noreferrer"&gt;DiFX, a CDI / Dependency Injection For JavaFX&lt;/a&gt;: &amp;ldquo;&lt;em&gt;The goal is to have CDI backed beans and events inside JavaFx Desktop Applications. I could use a few eyes/ideas before I cut an initial release and stabilize the API.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://github.com/techsenger/shellfx" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;techsenger&lt;/strong&gt; published ShellFX on GitHub&lt;/a&gt;: a platform for building JavaFX applications using an extended MVP pattern. Part of the growing Techsenger JavaFX library ecosystem (alongside CEFFX, TabPanePro, PatternFX, StagePro, etc.).&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://github.com/int4-org/FX/releases/tag/0.6.1" target="_blank" rel="noopener noreferrer"&gt;FX Flow 0.6.1&lt;/a&gt; got released: declarative, fluent UI library for JavaFX. Adds validation support for atomic multi-value updates. More info by &lt;strong&gt;john16384&lt;/strong&gt; on &lt;a href="https://www.reddit.com/r/JavaFX/comments/1uf8l0h/fx_flow_061_released_declarative_ui_building_for/" target="_blank" rel="noopener noreferrer"&gt;Reddit/r/JavaFX&lt;/a&gt;.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="podcasts-videos-books"&gt;Podcasts, Videos, Books&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://webtechie.be/post/2026-06-04-interview-with-naail-from-lottiefiles/" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Frank Delporte&lt;/strong&gt; published a blog and video&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Lottie4J started as a single question: can JavaFX render Lottie animations without a WebView? That question turned into a library. The library attracted pull requests. And now I had a 50-minute conversation with &lt;strong&gt;Naail Abdul Rahman&lt;/strong&gt;, R&amp;amp;D engineer at LottieFiles, to talk about where the format is heading and what that means for a Java implementation.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.linkedin.com/posts/pedro-duque-vieira-2644038_healthcare-healthtech-healthcareit-ugcPost-7467911189063245824-igkN/" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Pedro Duque Vieira&lt;/strong&gt; shared a video on LinkedIn&lt;/a&gt;: &amp;ldquo;&lt;em&gt;New capability added to the IKE Knowledge Layout Editor: display semantics can now be viewed in a table format. This provides a more structured way to inspect semantic information, which can be especially useful when working with large numbers of semantics.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;A live session of 2,5 hours with &lt;strong&gt;Johannes Rabauer&lt;/strong&gt; and &lt;strong&gt;Anton Arhipov&lt;/strong&gt; : &lt;a href="https://www.youtube.com/live/LekXCf-FJ00" target="_blank" rel="noopener noreferrer"&gt;Building a MIDI Visualizer with Junie, IntelliJ and JavaFX&lt;/a&gt;: &amp;ldquo;&lt;em&gt;AI assisted development is becoming a core part of modern software engineering. But what does that actually look like in a real Java project? In this live coding session, we explore AI powered development inside IntelliJ IDEA while building a JavaFX application that visualizes MIDI music through animated waveform based visualizations. Rather than treating AI as a code generator, we will use Junie and other IntelliJ AI capabilities as development partners throughout the process. Together, we&amp;rsquo;ll explore how AI can help with architecture, implementation, refactoring, testing, and day to day development decisions.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Frank Delporte&lt;/strong&gt; interviewed &lt;strong&gt;David Gutierrez&lt;/strong&gt; in a new video: &lt;a href="https://webtechie.be/post/javafx-in-action-%2327-with-david-gutierrez-about-jmathanim-to-create-mathematical-animations/" target="_blank" rel="noopener noreferrer"&gt;JavaFX In Action #27 with David Gutierrez about JMathAnim to Create Mathematical Animations&lt;/a&gt;: &amp;ldquo;&lt;em&gt;JMathAnim is a Java library and UI built on JavaFX that lets you create animated mathematical visualizations. The goal is simple: make it easy to build videos that explain mathematical concepts through animation. It&amp;rsquo;s inspired by the kind of content you see on YouTube channels like 3Blue1Brown.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="conferences-presentations"&gt;Conferences, Presentations&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;ZEISS Meditec hosted the &lt;a href="https://www.zeiss.com/meditec/en/news-events/events/jfx-adopters-meeting-2026.html" target="_blank" rel="noopener noreferrer"&gt;JFX Adopters Meeting 2026&lt;/a&gt; on June 16 in Munich. The full-day agenda included: &amp;ldquo;Low-Latency JavaFX: Robotics and Native Bindings&amp;rdquo; (&lt;strong&gt;Florian Enner&lt;/strong&gt; ), &amp;ldquo;JavaFX – Status and Beyond&amp;rdquo; (&lt;strong&gt;Wolfgang Weigend&lt;/strong&gt; ), &amp;ldquo;JPRO – the Future of Unified JavaFX Application Development across Desktop and Web&amp;rdquo; (&lt;strong&gt;Florian Kirmaier&lt;/strong&gt; ), &amp;ldquo;FXML 2.0: Write Markup, Ship Bytecode&amp;rdquo; (&lt;strong&gt;Michael Strauß&lt;/strong&gt; ), &amp;ldquo;Beyond MVC: A Practical Guide to MVVM in JavaFX&amp;rdquo; (&lt;strong&gt;Tibor Malanik&lt;/strong&gt; ), &amp;ldquo;Diagnosis in the Context of eBike Systems with JavaFX&amp;rdquo; (&lt;strong&gt;Frido Fechner&lt;/strong&gt; ), &amp;ldquo;JavaFX for Electronics Control&amp;rdquo; (&lt;strong&gt;Thorsten Stüker&lt;/strong&gt; ), &amp;ldquo;Lets Contribute Together&amp;rdquo; (&lt;strong&gt;Marius Hanl&lt;/strong&gt; ), and &amp;ldquo;Spreadsheet Calculation and Document Processing in JavaFX: Lessons from SCell and bk.text&amp;rdquo; (&lt;strong&gt;Vasily Smeltsov&lt;/strong&gt; ). Pictures shared by &lt;strong&gt;Wolfgang Weigend&lt;/strong&gt; :&#10;&lt;ul&gt;&#10;&lt;li&gt;&amp;ldquo;&lt;em&gt;The &lt;a href="https://bsky.app/profile/wolfgangweigend.bsky.social/post/3mofuegyfvc2n" target="_blank" rel="noopener noreferrer"&gt;official opening of the JFX Adopters Meeting 2026&lt;/a&gt; by &lt;strong&gt;Christian Heilmann&lt;/strong&gt; and &lt;strong&gt;Lisa&lt;/strong&gt;, both work with JavaFX at Zeiss Meditec AG.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&amp;ldquo;&lt;em&gt;The &lt;a href="https://bsky.app/profile/wolfgangweigend.bsky.social/post/3mofusejv5k2l" target="_blank" rel="noopener noreferrer"&gt;robotics session&lt;/a&gt; &amp;lsquo;Low-Latency JavaFX: Robotics and Native Bindings&amp;rsquo; by Florian Enner.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&amp;ldquo;&lt;em&gt;&lt;a href="https://bsky.app/profile/wolfgangweigend.bsky.social/post/3mofuzfnzes2l" target="_blank" rel="noopener noreferrer"&gt;Great welcome in the morning&lt;/a&gt; with &lt;strong&gt;Tom Schindl&lt;/strong&gt; , &lt;strong&gt;Stefano Negri&lt;/strong&gt; and &lt;strong&gt;Dirk Lemmermann&lt;/strong&gt; — all about JavaFX applications&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/wolfgangweigend.bsky.social/post/3mocwnoogjc2n" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Wolfgang Weigend&lt;/strong&gt;&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Please find the session &amp;lsquo;&lt;a href="https://jugf.github.io/posts/javafx-ui-technologie-als-zentraler-baustein-im-java-okosystem-24-06-2026/" target="_blank" rel="noopener noreferrer"&gt;JavaFX UI technology as a central component of the Java ecosystem&lt;/a&gt;&amp;rsquo; on Wednesday 24th of June 2026 at the Java User Group Frankfurt am Main in the National Library.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="jfx-central"&gt;JFX Central&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;New content on JFX Central:&#10;&lt;ul&gt;&#10;&lt;li&gt;Library: &lt;a href="https://www.jfx-central.com/libraries/svgnode" target="_blank" rel="noopener noreferrer"&gt;SvgNode&lt;/a&gt;, a lightweight JavaFX node for rendering SVG paths at any size. Fully supports FXML, property binding, and CSS styling.&lt;/li&gt;&#10;&lt;li&gt;Video: &lt;a href="https://www.jfx-central.com/videos/pb54youm6AM" target="_blank" rel="noopener noreferrer"&gt;JavaFX In Action with David Gutierrez about JMathAnim&lt;/a&gt;.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;li&gt;The JavaFX Links Of The Week of May got &lt;a href="https://foojay.io/today/javafx-links-of-may-2026/"&gt;bundled and published on Foojay.io&lt;/a&gt;.&lt;/li&gt;&#10;&lt;/ul&gt;</description></item><item><title>Lottie4J Meets LottieFiles: A Conversation with Naail Abdul Rahman</title><link>https://foojay.io/today/lottie4j-meets-lottiefiles/</link><pubDate>Tue, 09 Jun 2026 07:31:00 +0000</pubDate><guid>https://foojay.io/today/lottie4j-meets-lottiefiles/</guid><description>&lt;p&gt;Lottie animations run on Android, iOS, and the web. Getting them working on the JVM is a different story. &lt;a href="https://lottie4j.com" target="_blank" rel="noopener noreferrer"&gt;Lottie4J&lt;/a&gt; started as a question: can JavaFX render them without a WebView? That question turned into a library with a first release in March 2026! Since then, I received the first pull requests, recently added headless unit testing with JavaFX 26, and now this: a video conversation with Naail from the LottieFiles team.&lt;/p&gt;</description></item><item><title>JavaFX Links of May 2026</title><link>https://foojay.io/today/javafx-links-of-may-2026/</link><pubDate>Sun, 31 May 2026 08:19:07 +0000</pubDate><guid>https://foojay.io/today/javafx-links-of-may-2026/</guid><description>&lt;p&gt;Here are the JavaFX LinksOfTheMonth of May 2026. You can find the weekly lists on &lt;a href="https://www.jfx-central.com/links" target="_blank" rel="noopener noreferrer"&gt;jfx-central.com&lt;/a&gt;. Did we miss anything? Is there anything you want to have included in one of the next overviews? Let us know via &lt;a href="mailto:links@jfx-central.com"&gt;links@jfx-central.com&lt;/a&gt;.&lt;/p&gt;&#10;&lt;h2 id="applications"&gt;Applications&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/hansolo.eu/post/3mkeusogqbs2h" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Gerrit Grunwald&lt;/strong&gt;&lt;/a&gt;: &amp;ldquo;&lt;em&gt;After a nice 14km morning walk, I&amp;rsquo;ve modified the prediction mode in my little &lt;a href="https://github.com/hansolo/glucostatusfx/releases" target="_blank" rel="noopener noreferrer"&gt;JavaFX diabetes app and created a new release&lt;/a&gt;&amp;hellip; and all of that before 8am&amp;hellip; great start into the Sunday.&lt;/em&gt; 😁&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://foojay.social/@jabref/116501474018435951" target="_blank" rel="noopener noreferrer"&gt;Message from JabRef&lt;/a&gt;: &amp;ldquo;&lt;em&gt;We are excited that we are participating in GSOC2026 with 3 projects:&lt;/em&gt; &amp;quot;&#10;&lt;ul&gt;&#10;&lt;li&gt;Improved handling of older documents with OCR and AI-powered tools.&lt;/li&gt;&#10;&lt;li&gt;Improved LibreOffice-JabRef integration with one particular aspect of compatibility with other reference managers.&lt;/li&gt;&#10;&lt;li&gt;Improving startup times for JabKit by leveraging the power of GraalVM&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/davidcalculin.bsky.social/post/3mlbvm4rlg22d" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;David Gutiérrez&lt;/strong&gt; released version 1.8.0 of JMathAnim&lt;/a&gt;, a Java editor to make mathematical animations: &amp;ldquo;&lt;em&gt;featuring JavaFX effects for each individual object, improvements to autocomplete and the editor, code polishing, and numerous bug fixes.&lt;/em&gt; &amp;quot; Sources are &lt;a href="https://codeberg.org/davidgutierrezrubio/jmathanim" target="_blank" rel="noopener noreferrer"&gt;available here&lt;/a&gt;.&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/p-duke.bsky.social/post/3mlb7htf6xs2c" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Pedro Duke&lt;/strong&gt; shared a video&lt;/a&gt; of &lt;a href="https://www.ikehub.org/home" target="_blank" rel="noopener noreferrer"&gt;IKE&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Demo: users create custom Knowledge Layout windows,then use them to view/edit/create Components tailored to their workflow. Built for healthcare, involving standards and terminologies like HL7, SNOMED CT, LOINC, RxNorm.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.reddit.com/r/JavaFX/comments/1tghhjn/built_a_100_offline_pdf_utility_app_using_java_25/" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Ilmetallaro&lt;/strong&gt; built a 100% offline PDF utility app&lt;/a&gt; using Java 25, JavaFX and AtlantaFX (GPLv3): &amp;ldquo;&lt;em&gt;LibrePDF is focused on 100% privacy. It makes zero HTTP calls, everything stays locally on your machine, and it doesn&amp;rsquo;t even support logging. I was sick and tired of uploading my personal data to cloud giants (like iLovePDF, Smallpdf, etc.) or relying on sketchy closed-source freeware.&lt;/em&gt; &amp;quot; &lt;a href="https://github.com/MontesanoDev/LibrePDF" target="_blank" rel="noopener noreferrer"&gt;You can find the code, binaries, and more info here&lt;/a&gt;.&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/leoxiong.bsky.social/post/3mm7rteyxes2v" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Leo Xiong&lt;/strong&gt; shared a screenshot of work-in-progress&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Hello! I&amp;rsquo;m Lucy, your AI assistant. How can I help you with your database queries today? The AI-native database management tool journey has finally begun.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/brunoborges.bsky.social/post/3mlpen4gq6c2x" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Bruno Borges&lt;/strong&gt; on Bluesky&lt;/a&gt;: &amp;ldquo;&lt;em&gt;And to think that I did port a 2048 game #JavaScript implementation to a Java + JavaFX desktop version, all by hand a long time ago! Copilot just helped enhance further&amp;hellip; &lt;a href="https://brunoborges.github.io/fx2048/" target="_blank" rel="noopener noreferrer"&gt;Available on brunoborges.github.io/fx2048&lt;/a&gt;&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/rladstaetter.bsky.social/post/3mlmbc73w3c25" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Robert Ladstätter&lt;/strong&gt; shared a behind the scenes&lt;/a&gt;: &amp;ldquo;&lt;em&gt;LogoRRR&amp;rsquo;s latest tutorial video was made with JavaFX too. The app, overlays, effects, voice, and recording pipeline all come together in one generated video.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Marcus Hirt&lt;/strong&gt; is looking for people wanting to try out, and maybe even participate in, a little hobby project: &lt;a href="https://github.com/thegreystone/diskspace" target="_blank" rel="noopener noreferrer"&gt;DiskSpace&lt;/a&gt;: &amp;ldquo;&lt;em&gt;A cross-platform disk space visualizer that shows where your space went, with two complementary views: a sunburst (hierarchical radial layout, good for spotting depth-imbalanced subtrees and proportional weight at a glance) and a squarified-treemap heatmap (good for finding the largest individual cells across the whole tree). Press V to toggle.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="components-libraries-tools"&gt;Components, Libraries, Tools&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://www.reddit.com/r/JavaFX/comments/1suhrov/early_contributors_wanted_tailwindfx_utilityfirst/" target="_blank" rel="noopener noreferrer"&gt;A (removed) message by &lt;strong&gt;Street_Humor_7861&lt;/strong&gt; on Reddit&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Early contributors wanted for TailwindFX. An utility-first UI framework for JavaFX (MIT, 1.0-SNAPSHOT, actively developed). I&amp;rsquo;m building TailwindFX, an open-source framework that brings Tailwind CSS&amp;rsquo;s utility-first paradigm to JavaFX. Instead of writing verbose CSS/FXML or inline -fx-* styles, you compose UIs with familiar utility classes and type-safe Java APIs.&lt;/em&gt; &amp;quot; Check &lt;a href="https://github.com/yasmramos/tailwindfx" target="_blank" rel="noopener noreferrer"&gt;the repository here&lt;/a&gt;.&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.reddit.com/r/JavaFX/comments/1sz7od8/ceffx_prebuilt_natives_added_no_need_to_compile/" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Striking_Creme864&lt;/strong&gt; on Reddit&lt;/a&gt;: &amp;ldquo;&lt;em&gt;We recently introduced our &lt;a href="https://github.com/techsenger/ceffx" target="_blank" rel="noopener noreferrer"&gt;CEFFX project&lt;/a&gt; (a library for integrating the Chromium Embedded Framework into JavaFX) and it was well received. Based on that feedback, we decided to simplify its usage by providing prebuilt native libraries. This allows you to use the library without having to compile anything yourself. All native binaries are packaged into the ceffx-natives module using classifier names similar to those in OpenJFX.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/dlemmermann.bsky.social/post/3mkpdkbcan22d" target="_blank" rel="noopener noreferrer"&gt;Message by &lt;strong&gt;Dirk Lemmermann&lt;/strong&gt;&lt;/a&gt;: &amp;ldquo;&lt;em&gt;GemsFX 4.0.1 is out and has been &amp;lsquo;downgraded&amp;rsquo; back to using Java 11 and JavaFX 17 due to popular demand. I also added a new sampler demo auto-update installer (jdeploy) that &lt;a href="https://www.jdeploy.com/~gemsfxdemo" target="_blank" rel="noopener noreferrer"&gt;you can download here&lt;/a&gt;. The demo uses Java 24 and JavaFX 25.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/dlemmermann.bsky.social/post/3ml4e55poms24" target="_blank" rel="noopener noreferrer"&gt;Screenshot shared by &lt;strong&gt;Dirk Lemmermann&lt;/strong&gt;&lt;/a&gt;: &amp;ldquo;&lt;em&gt;GemsFX 4.0.4 is out on Maven Central with fixes to the styling of the InfoCenterView. Try it out via the &lt;a href="https://www.jdeploy.com/~gemsfxdemo" target="_blank" rel="noopener noreferrer"&gt;installer&lt;/a&gt;. Browse the available controls at &lt;a href="https://gemsfx.dlsc.com/" target="_blank" rel="noopener noreferrer"&gt;gemsfx.dlsc.com&lt;/a&gt;.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/cupofcode.bsky.social/post/3mkz6awptu22i" target="_blank" rel="noopener noreferrer"&gt;Message shared by &lt;strong&gt;Austin Lehman&lt;/strong&gt;&lt;/a&gt;: &amp;ldquo;&lt;em&gt;&lt;a href="https://aussom-lang.com/" target="_blank" rel="noopener noreferrer"&gt;Aussom-Lang&lt;/a&gt; now has support for JavaFX, GTK4, a Java native interface with dynamic Jar loading, and native library interface via Panama. Quite a bit that can be done with it now. Aussom is a safe, sandboxed scripting language for the JVM. Embed it in your Java app, run it on the server with Aussom Server, or use it in the browser with Aussom-Script.&lt;/em&gt; &amp;quot; A JavaFX example is &lt;a href="https://aussom-lang.com/docPage?product=aussom&amp;amp;page=written/javafx-example-simple.md&amp;amp;title=JavaFX%20Example" target="_blank" rel="noopener noreferrer"&gt;available in the documentation&lt;/a&gt;.&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Frank Delporte&lt;/strong&gt; announced &amp;ldquo;&lt;em&gt;V1.2.3 of Lottie4J, the library for parsing Lottie animations as Java objects and playing them as JavaFX animations. In this release: improved unit tests, data model and player improvements, and more! All info &lt;a href="https://lottie4j.com/releases/index.html" target="_blank" rel="noopener noreferrer"&gt;in the release notes&lt;/a&gt;.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.reddit.com/r/JavaFX/comments/1t9s3a0/javafx_dynamic_jar_based_plugin_system/" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Kareem&lt;/strong&gt; shared a video on Reddit of DockTask&lt;/a&gt;: &amp;ldquo;&lt;em&gt;JavaFX dynamic JAR based plugin system. The idea is pretty straightforward: users can upload their own JARs, and the app will load them at runtime thanks to Java&amp;rsquo;s serviceloader. It also connects to a remote repo to browse and display plugin information. It&amp;rsquo;s still a work in progress, but I&amp;rsquo;m really curious about what people think of this system. Any feedback would be appreciated! Check it &lt;a href="https://github.com/KSaifStack/DockTask" target="_blank" rel="noopener noreferrer"&gt;on GitHub&lt;/a&gt;.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/dlemmermann.bsky.social/post/3mmerndjbqk25" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Dirk Lemmermann&lt;/strong&gt; shared a screenshot with a lot of AtlantaFX themes&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Release 1.3.0 of the new collection of AtlantaFX themes is out now and published on Maven Central. A total of 25 themes (14 dark, 11 light). Use the plain CSS files or the Java API.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://foojay.io/today/testing-lottie4j-javafx-animations-in-github-actions-with-javafx-26-headless/"&gt;Republished on Foojay&lt;/a&gt; &amp;ldquo;&lt;em&gt;JavaFX 26&amp;rsquo;s new headless mode solves a real problem: testing animations in CI/CD pipelines without a display server. &lt;strong&gt;Frank Delporte&lt;/strong&gt; shows how to use it with Lottie4J in GitHub Actions.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=EW6JzB3jZs0" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Lee Wyatt&lt;/strong&gt; shared a video about JavaFX Tools&lt;/a&gt;: &amp;ldquo;&lt;em&gt;JavaFX Tools now includes four ways to generate or complete JavaFX property code&lt;/em&gt; &amp;ldquo;:&#10;&lt;ul&gt;&#10;&lt;li&gt;Alt+Enter accessor intention&lt;/li&gt;&#10;&lt;li&gt;fxp* completions&lt;/li&gt;&#10;&lt;li&gt;Generate menu: JavaFX Property Accessors&lt;/li&gt;&#10;&lt;li&gt;Generate menu: JavaFX Property&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.reddit.com/r/JavaFX/comments/1thyw7d/weaverbird_a_real_example_of_plugin_management/" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Striking_Creme864&lt;/strong&gt; on Reddit&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Recently, we introduced &lt;a href="https://github.com/techsenger/weaverbird" target="_blank" rel="noopener noreferrer"&gt;Weaverbird&lt;/a&gt; - a framework for working with dynamic plugins. In this post, we want to show a real example of how it can be used. The GUI is build on top of TabShell. The main idea is that a plugin configuration is represented as an XML file. When the application is distributed, it already contains predefined plugin configurations (at the same time, users can add their own plugins). A configuration contains module definitions, repositories used to download them, plugin metadata, and other related information.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;Last week, we included a link to the message by &lt;strong&gt;Dirk Lemmermann&lt;/strong&gt; about AtlantaFX Themes. Now, there is also a &lt;a href="https://dlsc-software-consulting-gmbh.github.io/atlantafx-themes/" target="_blank" rel="noopener noreferrer"&gt;website at&lt;/a&gt; with screenshots of all themes. &amp;ldquo;&lt;em&gt;Each theme overrides the color scale, semantic tokens, and dark / light mode flag without touching the upstream stylesheet.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.reddit.com/r/JavaFX/comments/1tp4jjv/gemsfx_new_controlsfx_atlantafx_companion/" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Dirk Lemmermann&lt;/strong&gt; announced version 4.1.0 of GemsFX&lt;/a&gt;: &amp;ldquo;&lt;em&gt;now includes an AtlantaFX companion stylesheet for ControlsFX. You can use the method ControlsFXAtlantaFX.apply() to add this new stylesheet to your scene or any parent node. By doing so you will be able to get rid of all those pesky warning / error messages regarding CSS rules using unknown colors. For more on GemsFX see &lt;a href="https://gemsfx.dlsc.com" target="_blank" rel="noopener noreferrer"&gt;gemsfx.dlsc.com&lt;/a&gt;.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="podcasts-videos-books"&gt;Podcasts, Videos, Books&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=Q8YPQzyeh58" target="_blank" rel="noopener noreferrer"&gt;Video by &lt;strong&gt;BabyDevCode&lt;/strong&gt;&lt;/a&gt;: &amp;ldquo;How to Run JavaFX Projects in Visual Studio Code.&amp;rdquo; The original is in Spanish, but also available in auto-dubbed English.&lt;/li&gt;&#10;&lt;li&gt;Recording of the JavaOne &amp;lsquo;26 talk by &lt;strong&gt;Phil Race&lt;/strong&gt; : &lt;a href="https://inside.java/2026/05/03/jdk-client-desktop/" target="_blank" rel="noopener noreferrer"&gt;The JDK Client Desktop : 2026 and Still Swinging&lt;/a&gt;: &amp;ldquo;&lt;em&gt;In this session, we explore how Swing fits into today&amp;rsquo;s Java ecosystem, how it works seamlessly alongside JavaFX, and why it can still outperform web-based approaches for certain desktop applications.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://foojay.io/today/debugging-bentofx-in-melodymatrix-with-matt-coley-scenic-view-and-an-honest-look-at-ai-generated-code/"&gt;Republished on Foojay&lt;/a&gt;: &amp;ldquo;&lt;em&gt;&lt;strong&gt;Frank Delporte&lt;/strong&gt; walks through debugging BentoFX in MelodyMatrix using Scenic View with &lt;strong&gt;Matt Coley&lt;/strong&gt;, plus a realistic look at AI-generated code and its challenges.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=N0KiHP6UPKY" target="_blank" rel="noopener noreferrer"&gt;Video by &lt;strong&gt;Florian Enner&lt;/strong&gt;&lt;/a&gt; showing his JavaFX charts and 3D visualizations in JavaFX from within MATLAB.&lt;/li&gt;&#10;&lt;li&gt;New impressive &lt;a href="https://www.youtube.com/watch?v=TlaJmlVQf98" target="_blank" rel="noopener noreferrer"&gt;video by &lt;strong&gt;Florian Enner&lt;/strong&gt; of the JavaFX HEBI Charts&lt;/a&gt; showing 50 KHz update, 100 subplots, chart with 1000 lines, and more. You can find the &lt;a href="https://github.com/HebiRobotics/hebi-charts-examples" target="_blank" rel="noopener noreferrer"&gt;example repo on GitHub&lt;/a&gt;.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="tutorials"&gt;Tutorials&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://dev.java/learn/javafx/a11y/" target="_blank" rel="noopener noreferrer"&gt;New tutorial by &lt;strong&gt;Ana-Maria Mihalceanu&lt;/strong&gt;: &amp;ldquo;Accessibility in JavaFX&amp;rdquo;&lt;/a&gt;. &amp;ldquo;&lt;em&gt;JavaFX provides accessibility APIs and properties that help you build inclusive user interfaces. A good starting point is to rely on standard controls and ensure that your user interface employs proper semantics. From there, you can customize accessible metadata and fine-tune how components behave for assistive technologies.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="conferences-presentations"&gt;Conferences, Presentations&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;On June 16th, the &lt;a href="https://www.zeiss.com/meditec/en/news-events/events/jfx-adopters-meeting-2026.html" target="_blank" rel="noopener noreferrer"&gt;JFX Adopters Meeting&lt;/a&gt; will take place in Munich, Germany. &amp;ldquo;&lt;em&gt;We will be hosting a JFX Adopters Meeting to exchange information on current projects and future plans. Representatives of the JavaFX &amp;rsquo;ecosystem&amp;rsquo; will also be there to help develop a viable picture of JavaFX. The success of future developments depends on the contribution of adopter companies making our community stronger.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="miscellaneous"&gt;Miscellaneous&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://www.linkedin.com/pulse/rest-story-april-edition-jvm-weekly-vol-173-artur-skowro%C5%84ski-ibyyf/" target="_blank" rel="noopener noreferrer"&gt;In the JVM Weekly vol. 173, by &lt;strong&gt;Artur Skowroński&lt;/strong&gt;&lt;/a&gt;: &amp;ldquo;&lt;em&gt;&lt;a href="https://melodymatrix.rocks/" target="_blank" rel="noopener noreferrer"&gt;MelodyMatrix&lt;/a&gt; by &lt;strong&gt;Frank Delporte&lt;/strong&gt; isn&amp;rsquo;t important for what it does (it&amp;rsquo;s a music-related tool) - it&amp;rsquo;s important as a case study for how to ship a JavaFX desktop app in 2026. The &lt;a href="https://foojay.io/today/melodymatrix-v1-0-0-released-shipping-a-javafx-app-with-jdeploy-github-actions-and-auto-update/"&gt;release walkthrough on Foojay covers the full pipeline&lt;/a&gt;: jdeploy for cross-platform native installers, GitHub Actions for the build, auto-update integration, the works.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/dlemmermann.bsky.social/post/3ml6mkelzhk2g" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Dirk Lemmermann&lt;/strong&gt; is asking&lt;/a&gt; to get JetBrains to &lt;a href="https://youtrack.jetbrains.com/issue/IDEA-353241/Allow-final-JavaFX-properties-to-generate-the-setter-method." target="_blank" rel="noopener noreferrer"&gt;fix a JavaFX-related issue&lt;/a&gt; in IntelliJ IDEA.&amp;quot;&lt;em&gt;It is so disruptive to my &amp;lsquo;flow&amp;rsquo;.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="jfx-central"&gt;JFX Central&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;The JavaFX Links Of The Week of April got &lt;a href="https://foojay.io/today/javafx-links-of-april-2026/"&gt;bundled and published on Foojay.io&lt;/a&gt;.&lt;/li&gt;&#10;&lt;/ul&gt;</description></item><item><title>Debugging BentoFX in MelodyMatrix with Matt Coley, Scenic View, and an Honest Look at AI-Generated Code</title><link>https://foojay.io/today/debugging-bentofx-in-melodymatrix-with-matt-coley-scenic-view-and-an-honest-look-at-ai-generated-code/</link><pubDate>Fri, 15 May 2026 10:02:40 +0000</pubDate><guid>https://foojay.io/today/debugging-bentofx-in-melodymatrix-with-matt-coley-scenic-view-and-an-honest-look-at-ai-generated-code/</guid><description>&lt;p&gt;There are bugs you can solve by yourself, and bugs where you just need to sit down with someone who knows the internals. This video is in the second category. &lt;a href="https://melodymatrix.rocks/" target="_blank" rel="noopener noreferrer"&gt;MelodyMatrix&lt;/a&gt; uses &lt;a href="https://github.com/Col-E/BentoFX" target="_blank" rel="noopener noreferrer"&gt;BentoFX&lt;/a&gt; for its dockable panel layout. Branches, leaves, tabs on the side, content panels that open and close. It works well until something fights the layout. But I had some visual problems I could not explain, some code that felt more complicated than it should be, and no good explanation for why.&lt;/p&gt;</description></item><item><title>Testing Lottie4J JavaFX Animations in GitHub Actions Without a Display: JavaFX 26 Headless to the Rescue</title><link>https://foojay.io/today/testing-lottie4j-javafx-animations-in-github-actions-with-javafx-26-headless/</link><pubDate>Wed, 13 May 2026 07:35:26 +0000</pubDate><guid>https://foojay.io/today/testing-lottie4j-javafx-animations-in-github-actions-with-javafx-26-headless/</guid><description>&lt;p&gt;When I released &lt;a href="https://lottie4j.com/releases/#2026-03-10-110" target="_blank" rel="noopener noreferrer"&gt;Lottie4J 1.1.0&lt;/a&gt;, I mentioned something a bit embarrassing in the release notes and &lt;a href="https://webtechie.be/post/2026-03-10-new-release-of-lottie4j/" target="_blank" rel="noopener noreferrer"&gt;this blog post&lt;/a&gt;: there was a new unit test to compare the JavaFX player output against a JavaScript reference player, but it &amp;ldquo;&lt;em&gt;can not run on CI, because it requires a display output&lt;/em&gt;.&amp;rdquo; A TODO. A known limitation. One of those notes you write hoping future-you will figure it out.&lt;/p&gt;&#10;&lt;p&gt;&lt;a href="https://gluonhq.com/javafx-26-is-now-available/" target="_blank" rel="noopener noreferrer"&gt;JavaFX 26 was released on March 17, 2026&lt;/a&gt; and includes a new headless platform, allowing me to get the test running on GitHub Actions without a display.&lt;/p&gt;</description></item><item><title>JavaFX Links of April 2026</title><link>https://foojay.io/today/javafx-links-of-april-2026/</link><pubDate>Thu, 30 Apr 2026 09:02:34 +0000</pubDate><guid>https://foojay.io/today/javafx-links-of-april-2026/</guid><description>&lt;p&gt;Here are the JavaFX LinksOfTheMonth of April 2026. You can find the weekly lists on &lt;a href="https://www.jfx-central.com/links" target="_blank" rel="noopener noreferrer"&gt;jfx-central.com&lt;/a&gt;. Did we miss anything? Is there anything you want to have included in one of the next overviews? Let us know via &lt;a href="mailto:links@jfx-central.com"&gt;links@jfx-central.com&lt;/a&gt;.&lt;/p&gt;&#10;&lt;h2 id="core"&gt;Core&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;strong&gt;Frank Delporte&lt;/strong&gt; published a rework on Foojay of last week&amp;rsquo;s Azul Blog post about the Oracle announcement related to JavaFX: &lt;a href="https://foojay.io/today/the-javafx-revival/"&gt;Oracle&amp;rsquo;s Java Verified Portfolio and JavaFX: What It Actually Means&lt;/a&gt;.&lt;/li&gt;&#10;&lt;li&gt;Blog post by Gluon: &lt;a href="https://gluonhq.com/april-2026-critical-patch-update-for-openjfx-now-available/" target="_blank" rel="noopener noreferrer"&gt;April 2026 Critical Patch Update for OpenJFX Now Available&lt;/a&gt;. With a &lt;a href="https://bsky.app/profile/johanvos.bsky.social/post/3mjzkzn6zzs2v" target="_blank" rel="noopener noreferrer"&gt;message shared by &lt;strong&gt;Johan Vos&lt;/strong&gt;&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Enjoy the latest and safest releases of JavaFX! And if you want to help us building/distributing these releases, consider our &lt;a href="https://gluonhq.com/services/javafx-support/#pricing" target="_blank" rel="noopener noreferrer"&gt;LTS support at gluonhq.com/lts&lt;/a&gt;.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;Related to the three-monthly security update, a merge request has been created in the OpenJFX repo with the &lt;a href="https://github.com/openjdk/jfx26u/pull/23/changes" target="_blank" rel="noopener noreferrer"&gt;release notes for 26.0.1&lt;/a&gt; with seven fixes and one known issue: &amp;ldquo;&lt;em&gt;Media Playback Does Not Work on Ubuntu 26.04. This is because JavaFX Media does not support libavcodec version 62. Support will be added with &lt;a href="https://bugs.openjdk.org/browse/JDK-8378510" target="_blank" rel="noopener noreferrer"&gt;JDK-8378510&lt;/a&gt;.&lt;/em&gt;&amp;rdquo;.&lt;/li&gt;&#10;&lt;li&gt;Still on Java 8 with your JavaFX application and using Amazon Corretto? Apparently the &lt;a href="https://aws.amazon.com/about-aws/whats-new/2026/04/amazon-corretto-april-2026-quarterly-updates/" target="_blank" rel="noopener noreferrer"&gt;April 2026 release is the last one Amazon is providing with JavaFX 8 support&lt;/a&gt;.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="scenebuilder"&gt;SceneBuilder&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;On Reddit, &lt;strong&gt;No-Security-7518&lt;/strong&gt; is asking for feedback: &lt;a href="https://www.reddit.com/r/JavaFX/comments/1sebnus/scenebuilder_is_a_great_piece_of_software_what/" target="_blank" rel="noopener noreferrer"&gt;SceneBuilder is a GREAT piece of software. What features could make it even greater?&lt;/a&gt;: &amp;ldquo;&lt;em&gt;I&amp;rsquo;m thinking maybe I could become a contributor. Anyway, I was thinking: What could make Scenebuilder even better?&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="applications"&gt;Applications&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/pdfsam.org/post/3midyc6gytc2l" target="_blank" rel="noopener noreferrer"&gt;PDFsam announced&lt;/a&gt;: &amp;ldquo;&lt;em&gt;The new PDFsam Basic 6.0.0 is out with a lot of work done on the PDF engine and accessibility, upgraded JDK and JavaFX and more.&lt;/em&gt; &amp;quot; Check &lt;a href="https://blog.pdfsam.org/new-release/pdfsam-basic-6-0-0-is-out/2592/" target="_blank" rel="noopener noreferrer"&gt;this post&lt;/a&gt; for more details.&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Frank Delporte&lt;/strong&gt; did the first release of &lt;a href="https://melodymatrix.rocks/" target="_blank" rel="noopener noreferrer"&gt;MelodyMatrix&lt;/a&gt;, live on camera, together with &lt;strong&gt;Steve Hannah&lt;/strong&gt; , the creator of &lt;a href="https://www.jdeploy.com/" target="_blank" rel="noopener noreferrer"&gt;jDeploy&lt;/a&gt;. You can watch the &lt;a href="https://www.youtube.com/watch?v=_-IL7uHalIU" target="_blank" rel="noopener noreferrer"&gt;full video on YouTube&lt;/a&gt; and find more information &lt;a href="https://webtechie.be/post/2026-04-16-first-release-of-melodymatrix-with-jdeploy/" target="_blank" rel="noopener noreferrer"&gt;in this blog post&lt;/a&gt;. MelodyMatrix is a desktop app to experience music in a new way with real-time MIDI recording, multiple visualization views, and powerful playback features. Perfect for musicians, educators, and music enthusiasts.&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.linkedin.com/posts/viktor-karpyuk_mongodb-opensource-developertools-ugcPost-7449866993488297985-sKxe/?utm_source=share&amp;amp;utm_medium=member_desktop&amp;amp;rcm=ACoAAAMtmUkBuuAVyJKMU3vtXsADMtuaTKIO8IA" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Viktor Karpyuk&lt;/strong&gt; shared on LinkedIn&lt;/a&gt;: &amp;ldquo;&lt;em&gt;It started with a small frustration: Studio 3T Community Edition only allowed 3 database connections. That limitation kept getting in the way of real day-to-day work, so instead of working around it, I decided to build something simpler, lighter, and more practical for everyday MongoDB usage. That is how Mongo Explorer was born — a native MongoDB client focused on the things developers actually need: quick connections, easy browsing, solid querying, and a clean desktop experience without unnecessary overhead.&lt;/em&gt; &amp;quot; It&amp;rsquo;s &lt;a href="https://github.com/viktor-karpyuk/mongo-explorer" target="_blank" rel="noopener noreferrer"&gt;available on GitHub&lt;/a&gt;.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="components-libraries-tools"&gt;Components, Libraries, Tools&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/dlemmermann.bsky.social/post/3mign6rr7q22i" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Dirk Lemmermann&lt;/strong&gt; shared amazing screenshots&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Last weekend I worked on FlexGanttFX (flexganttfx.com) improvements and support for AtlantaFX theming / styling. A new showcase app with new demos / samples is also in the works.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/leewyatt.bsky.social/post/3mj4iduyq3s2y" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Lee Wyatt&lt;/strong&gt; announced JavaFX Tools v2.0&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Free IntelliJ plugin for JavaFX devs. CSS completion, variable resolution and gutter previews, 63,000+ Ikonli icons browser, weekly JFXCentral LOTW digest. Thanks to &lt;strong&gt;Dirk Lemmermann&lt;/strong&gt; for testing and guidance!&lt;/em&gt; &amp;quot; Check the &lt;a href="https://www.youtube.com/watch?v=a03BkmqNefk" target="_blank" rel="noopener noreferrer"&gt;video on YouTube&lt;/a&gt;. The plugin is &lt;a href="https://plugins.jetbrains.com/plugin/17514-javafx-tools" target="_blank" rel="noopener noreferrer"&gt;available on the JetBrains Marketplace&lt;/a&gt;.&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/sosuisen.bsky.social/post/3miqzesecvk2b" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Hidekazu Kubota&lt;/strong&gt; announced&lt;/a&gt; the first stable release of the &lt;a href="https://github.com/sosuisen/javafx-builder-api" target="_blank" rel="noopener noreferrer"&gt;JavaFX Builder API&lt;/a&gt;: &amp;ldquo;&lt;em&gt;This API allows UI code to represent nested structures that mirror the container hierarchy of the user interface. This project aims to reintroduce builder classes to JavaFX. Although these classes were included in JavaFX 2, they were removed from the official library due to concerns about maintenance overhead. Nonetheless, for those who prefer a fluent style, having an API like this is a valuable addition.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;Shared by &lt;a href="https://www.reddit.com/r/JavaFX/comments/1slll8c/running_javafx_apps_with_updates_and_dynamic/" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Striking_Creme864&lt;/strong&gt; on Reddit&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Running JavaFX apps with updates and dynamic plugins. Today I want to share our project &lt;a href="https://github.com/techsenger/weaverbird" target="_blank" rel="noopener noreferrer"&gt;Weaverbird&lt;/a&gt; and show how it can be used with JavaFX. Usually, a JavaFX application is started with all modules loaded int the boot layer. However, JPMS allows you to create an unlimited number of child layers and build a graph from them, which in turn lets us separate application management from the application itself. For exactly this purpose, Weaverbird was created - it runs in the boot layer and is responsible for creating and managing the layers (at the same time its capabilities go much further).&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.reddit.com/r/JavaFX/comments/1sr105r/kickstartfx_v11_the_most_advanced_template_for/" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Christopher Schnick&lt;/strong&gt; shared info about KickstartFX v1.1&lt;/a&gt;: &amp;ldquo;&lt;em&gt;A few months ago I released a ready-to-use application template called &lt;a href="https://github.com/xpipe-io/kickstartfx" target="_blank" rel="noopener noreferrer"&gt;KickstartFX&lt;/a&gt;. You can clone it and get started instantly or try out the pre-built releases on GitHub. The code and buildscripts are the same you find in a real-world production application as most of them are taken straight from one, in this case &lt;a href="https://github.com/xpipe-io/xpipe" target="_blank" rel="noopener noreferrer"&gt;XPipe&lt;/a&gt;. Since then, quite a few additions and bug fixes have been integrated.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://webtechie.be/post/2026-04-20-lottie4j-unit-test-with-headless-javafx/" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Frank Delporte&lt;/strong&gt; blogged about headless testing of Lottie4J&lt;/a&gt;, a library for parsing Lottie animations as Java objects and playing them as JavaFX animations: &amp;ldquo;&lt;em&gt;Lottie4J had a unit test I marked &amp;lsquo;can not run on CI, because it requires a display.&amp;rsquo; JavaFX 26 fixed that. There&amp;rsquo;s a built-in headless platform now, one JVM flag, and GitHub Actions just work without any display setup. There&amp;rsquo;s a small catch with Java version juggling (JavaFX 26 requires Java 24+, Lottie4J targets Java 21), but a Maven profile handles it cleanly.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.reddit.com/r/JavaFX/comments/1sti4zh/flexganttfx_showcase_application/" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Dirk Lemmermann&lt;/strong&gt; published a FlexGanttFX Showcase Application&lt;/a&gt; : &amp;ldquo;&lt;em&gt;created a jdeploy installer for the FlexGanttFX showcase application. You can &lt;a href="https://www.jdeploy.com/~flexganttfxshowcase" target="_blank" rel="noopener noreferrer"&gt;find it here&lt;/a&gt;. The installer will allow you to run the demo locally and the installation will auto-update whenever I push a new release. FlexGanttFX is a framework for building UIs for planning and scheduling applications. The showcase application contains a couple of demos and feature samples. If there is anything you would like to see being added to the demos then please let me know and I will try to come up with an example. I will soon add a JPro-based website that will allow you to run the same application in your browser.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="podcasts-videos-books"&gt;Podcasts, Videos, Books&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=Ytdo8OGEYFI" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Catherine Edelveis&lt;/strong&gt; published a new video&lt;/a&gt;: &amp;ldquo;&lt;em&gt;New on CyberJAR: Comparing Top OpenJDK Distributions. If you&amp;rsquo;re looking for more than vanilla Java - JavaFX, Java 6 an 7, hardened container images, extended LTS support - check out this comparative summary.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=uvQwVpG3c5A" target="_blank" rel="noopener noreferrer"&gt;Live coding session with &lt;strong&gt;Johannes Rabauer&lt;/strong&gt; and &lt;strong&gt;Ryan Jarvinen&lt;/strong&gt;&lt;/a&gt;: &amp;ldquo;&lt;em&gt;AI Coding with IBM Bob: Building a JavaFX Chess Game Live. In this live coding session we&amp;rsquo;ll we explore IBM Bob, IBM&amp;rsquo;s new AI-first development environment designed to act as a true software engineering partner rather than just an autocomplete tool. Bob integrates directly into the IDE and supports chat-driven development, real-time code review, and security-aware refactoring, while understanding your codebase and intent. It is purpose-built for tasks like Java modernization, large-scale refactoring, and enterprise-grade development workflows. The goal of this session is simple: Use a limited trial budget (40 Bobcoins) to build a functional JavaFX chess game and evaluate how far an AI IDE can realistically take us.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.linkedin.com/posts/olivier-pillods-9286a0113_javajavafx-3d-chess-final-project-2023-ugcPost-7450104328989663232-MdE6" target="_blank" rel="noopener noreferrer"&gt;And also a finished chess game in 3D by &lt;strong&gt;Olivier Pillods&lt;/strong&gt;&lt;/a&gt;: &amp;ldquo;&lt;em&gt;We were asked to replicate the classic chess game with JavaFX, and to add new pieces and rule variants. I was the only student that decided to make it 3D. Developed my own obj file importer. I created piece animations and colored interactions for movement availability. To finish, I made a graveyard system, and a rollback functionality that remembers all until start.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Frank Delporte&lt;/strong&gt; was &amp;ldquo;&lt;em&gt;struggling with the BentoFX layout in MelodyMatrix, and called &lt;strong&gt;Matt Coley&lt;/strong&gt;, the person who wrote it. We used ScenicView to inspect the running JavaFX scene graph, cleaned up some AI-generated code, and possibly found a bug. Honest and practical session.&lt;/em&gt; &amp;quot; Watch the &lt;a href="https://www.youtube.com/watch?v=grwzIWWZMNw" target="_blank" rel="noopener noreferrer"&gt;video on YouTube&lt;/a&gt; and check the &lt;a href="https://webtechie.be/post/2026-04-21-improving-melodymatrix-ui-with-bentofx/" target="_blank" rel="noopener noreferrer"&gt;blog post with more info and links&lt;/a&gt;.&lt;/li&gt;&#10;&lt;li&gt;Video by &lt;strong&gt;Lee Wyatt&lt;/strong&gt; : &lt;a href="https://www.youtube.com/watch?v=ycj1X_TwfeU" target="_blank" rel="noopener noreferrer"&gt;JavaFX Hot Reload in IntelliJ — One Click, Zero Code Changes (FxmlKit + JavaFX Tools)&lt;/a&gt;: &amp;ldquo;&lt;em&gt;JavaFX hot reload without touching your production code. FxmlKit 1.5.1 introduces a system property to enable dev mode externally. JavaFX Tools 2.1.1 takes it one step further — just click the purple Runner button in IntelliJ IDEA, and your app starts with FXML/CSS hot reload enabled automatically. No need to call FxmlKit.enableDevelopmentMode() in your code. No risk of shipping dev mode to production. No extra configuration.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="conferences-presentations"&gt;Conferences, Presentations&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/wolfgangweigend.bsky.social/post/3mjz5326mxk2p" target="_blank" rel="noopener noreferrer"&gt;Picture shared by &lt;strong&gt;Wolfgang Weigend&lt;/strong&gt;&lt;/a&gt;: &amp;ldquo;&lt;em&gt;A nice conversation about various topics such as Java dependencies, JUnit and also JavaFX at the oracle Java booth at the JCON 2026 conference in Cologne with &lt;strong&gt;Christian Stein&lt;/strong&gt; and &lt;strong&gt;Adam Bien&lt;/strong&gt;.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="miscellaneous"&gt;Miscellaneous&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Article by &lt;strong&gt;Daniel Harris&lt;/strong&gt; : &lt;a href="https://www.coohom.com/article/interactive-floor-plan-editor-in-java-tools-and-frameworks" target="_blank" rel="noopener noreferrer"&gt;Interactive Floor Plan Editor in Java: Tools and Frameworks: A practical guide for developers building drag‑and‑drop architectural layout editors with Java and JavaFX&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Over the last decade, I&amp;rsquo;ve worked on several internal tools for architecture studios and real‑estate visualization teams. One recurring request is the same: build an interactive floor plan editor in Java that allows designers to quickly sketch layouts, drag walls, and experiment with room configurations. &amp;hellip; In this guide I&amp;rsquo;ll walk through the frameworks, design patterns, and engineering decisions that make Java floor plan editors usable and scalable.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="jfx-central"&gt;JFX Central&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Content changes on JFX Central:&#10;&lt;ul&gt;&#10;&lt;li&gt;Fifty (!) new &lt;a href="https://www.jfx-central.com/libraries" target="_blank" rel="noopener noreferrer"&gt;libraries&lt;/a&gt; and three &lt;a href="https://www.jfx-central.com/books" target="_blank" rel="noopener noreferrer"&gt;books&lt;/a&gt; were added to the JFX Central website.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;li&gt;The desktop client was updated to JavaFX 25 and now uses the new EXTENDED stage style, which allows for a more native feel of the application on Windows, Mac, Linux.&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Dirk Lemmermann&lt;/strong&gt; is working on more improvements:&#10;&lt;ul&gt;&#10;&lt;li&gt;&amp;ldquo;&lt;em&gt;&lt;a href="https://bsky.app/profile/dlemmermann.bsky.social/post/3mhzvnc76wc2u" target="_blank" rel="noopener noreferrer"&gt;Copilot is now updating the libraries catalogue for JFX Central for me&lt;/a&gt;. &amp;lsquo;Find the most popular JavaFX libraries on GitHub and summarise the readme and download the images and integrate into libraries.json&amp;rsquo;. That&amp;rsquo;s what AI was made for 🙂&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&amp;ldquo;&lt;em&gt;A little competition never hurt anyone &amp;hellip;.. &lt;a href="https://bsky.app/profile/dlemmermann.bsky.social/post/3mi2dduhvnk2o" target="_blank" rel="noopener noreferrer"&gt;JFX Central will start showing the GitHub stars that a library has received so far.&lt;/a&gt;&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&amp;ldquo;&lt;em&gt;&lt;a href="https://bsky.app/profile/dlemmermann.bsky.social/post/3mi2dgp7xdk2o" target="_blank" rel="noopener noreferrer"&gt;Here is another one&lt;/a&gt;&lt;/em&gt; &amp;hellip; the header changes layout when a library has its own icon &amp;hellip;. good job &lt;strong&gt;Gerrit Grunwald&lt;/strong&gt; :-)_&amp;rdquo;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;li&gt;The JavaFX Links Of The Week of March got bundled and &lt;a href="https://foojay.io/today/javafx-links-of-march-2026/"&gt;published on Foojay.io&lt;/a&gt;.&lt;/li&gt;&#10;&lt;/ul&gt;</description></item><item><title>MelodyMatrix V1.0.0 Released: Shipping a JavaFX App with jDeploy, GitHub Actions, and Auto-Update</title><link>https://foojay.io/today/melodymatrix-v1-0-0-released-shipping-a-javafx-app-with-jdeploy-github-actions-and-auto-update/</link><pubDate>Mon, 20 Apr 2026 14:51:00 +0000</pubDate><guid>https://foojay.io/today/melodymatrix-v1-0-0-released-shipping-a-javafx-app-with-jdeploy-github-actions-and-auto-update/</guid><description>&lt;p&gt;Some side projects take a while to get to a proper release. &lt;a href="https://melodymatrix.rocks/" target="_blank" rel="noopener noreferrer"&gt;MelodyMatrix&lt;/a&gt; is one of those. The app has been downloadable for quite some time thanks to &lt;a href="https://www.jdeploy.com/" target="_blank" rel="noopener noreferrer"&gt;jDeploy&lt;/a&gt;, but there was no official V1.0.0 yet. No tagged release. No moment of &amp;ldquo;okay, this is it.&amp;rdquo; Just a rolling build on every commit to the &lt;code&gt;main&lt;/code&gt; branch.&lt;/p&gt;&#10;&lt;p&gt;That changed now: live, on camera, together with Steve Hannah, the creator of jDeploy.&lt;/p&gt;</description></item><item><title>Oracle's Java Verified Portfolio and JavaFX: What It Actually Means</title><link>https://foojay.io/today/the-javafx-revival/</link><pubDate>Thu, 02 Apr 2026 07:01:48 +0000</pubDate><guid>https://foojay.io/today/the-javafx-revival/</guid><description>&lt;p&gt;Oracle&amp;rsquo;s JavaOne 2026 brought an announcement that caught some attention in the Java community: the Java Verified Portfolio (JVP), a new program that bundles JDK-related tools, frameworks, libraries, and services under a single commercially supported umbrella with clear roadmaps and support timelines. One of the headline items? Commercial support for JavaFX in JDK 17, 21, 25, 26, and future LTS releases.&lt;/p&gt;&#10;&lt;p&gt;Oracle&amp;rsquo;s own framing: &lt;em&gt;&amp;ldquo;Driven by customer demand, interest from academia, and the growing need for advanced visualizations in AI-powered applications and analytics, Oracle is reintroducing commercial support for JavaFX.&amp;rdquo;&lt;/em&gt;&lt;/p&gt;</description></item><item><title>JavaFX Links of March 2026</title><link>https://foojay.io/today/javafx-links-of-march-2026/</link><pubDate>Tue, 31 Mar 2026 07:49:54 +0000</pubDate><guid>https://foojay.io/today/javafx-links-of-march-2026/</guid><description>&lt;p&gt;Here are the JavaFX LinksOfTheMonth of March 2026. You can find the weekly lists on &lt;a href="https://www.jfx-central.com/links" target="_blank" rel="noopener noreferrer"&gt;jfx-central.com&lt;/a&gt;. Did we miss anything? Is there anything you want to have included in one of the next overviews? Let us know via &lt;a href="mailto:links@jfx-central.com"&gt;links@jfx-central.com&lt;/a&gt;.&lt;/p&gt;&#10;&lt;h2 id="core"&gt;Core&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Java and JavaFX 26 got released!&#10;&lt;ul&gt;&#10;&lt;li&gt;JavaFX 26 requires JDK 24 or later.&lt;/li&gt;&#10;&lt;li&gt;You can find all important changes, removed and new features, and fixed issues in the &lt;a href="https://github.com/openjdk/jfx/blob/jfx26/doc-files/release-notes-26.md" target="_blank" rel="noopener noreferrer"&gt;Release Notes for JavaFX 26&lt;/a&gt;.&lt;/li&gt;&#10;&lt;li&gt;You can download JavaFX 26 &lt;a href="https://gluonhq.com/products/javafx/" target="_blank" rel="noopener noreferrer"&gt;from the Gluon website&lt;/a&gt;.&lt;/li&gt;&#10;&lt;li&gt;A &lt;a href="https://www.techzine.eu/news/devops/139673/oracle-releases-java-26-ai-security-and-the-java-verified-portfolio/" target="_blank" rel="noopener noreferrer"&gt;remarkable move by Oracle&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Oracle is introducing the Java Verified Portfolio (JVP). This is a curated collection of enterprise-grade tools, frameworks, and libraries that Oracle commercially supports. &amp;hellip; It is worth noting that JavaFX, the Java GUI framework, is once again supported via JVP. According to Oracle, this is due to growing demand. Support will be available for all new Java versions and all LTS versions during the five-year Premium Support tier. Support for JDK 8 will be extended until March 2028.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://blogs.oracle.com/java/announcing-jvp" target="_blank" rel="noopener noreferrer"&gt;Blog post by Oracle&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Announcing the Oracle Java Verified Portfolio including Helidon and reintroduction of JavaFX Commercial Support&lt;/em&gt;.&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://mastodon.social/@johanvos/116245211784256953" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Johan Vos&lt;/strong&gt; announced&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Gluon continues to lead the OpenJFX project. Here is JavaFX 26.&lt;/em&gt; &amp;quot; With a link to a &lt;a href="https://gluonhq.com/javafx-26-is-now-available/" target="_blank" rel="noopener noreferrer"&gt;Gluon blog post about JavaFX 26&lt;/a&gt;.&lt;/li&gt;&#10;&lt;li&gt;Video with the recording of the talk by Kevin Rusforth at JavaOne: &lt;a href="https://inside.java/2026/03/25/javaone-javafx/" target="_blank" rel="noopener noreferrer"&gt;JavaFX 26 Today&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Building a compelling desktop app today requires features such as UI controls, charts, interactive media, web content, animation, CSS styling, 2D and 3D rendering, rich text, and property binding, with an easy-to-use programming paradigm that runs cross-platform. JavaFX is all this and more, delivering a rich graphical UI toolkit for building your applications and can also seamlessly interoperate with Swing. In this session you&amp;rsquo;ll learn about the new and exciting features we&amp;rsquo;ve developed over the past couple of years, culminating with the release of JavaFX 26. You&amp;rsquo;ll also get an update on RichTextArea. We&amp;rsquo;ll show plenty of demos and sample code, and finish with a sneak peek at what&amp;rsquo;s coming next.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.linkedin.com/posts/java-javafx-javafx26-share-7442544660272627712-vVJf/" target="_blank" rel="noopener noreferrer"&gt;APIdia announced&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Adjacent to Java releases are JavaFX releases. Of course, API documentation of JavaFX 26 is similarly &lt;a href="https://apidia.net/mvn/org.openjfx/javafx/26/" target="_blank" rel="noopener noreferrer"&gt;available on APIdia&lt;/a&gt;.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://inside.java/2026/03/03/quality-heads-up/" target="_blank" rel="noopener noreferrer"&gt;Quality Outreach Heads-up - JavaFX 27: Metal Is Now the Default Rendering Pipeline on macOS&lt;/a&gt;: &amp;ldquo;&lt;em&gt;This heads-up is part of the quality outreach sent to the projects involved. &amp;hellip; On macOS, the default JavaFX rendering pipeline has been switched to Metal since JavaFX 27 Early Access (EA) build 3. Metal provides improved performance and better compatibility on modern hardware.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;A blog by Gluon: &lt;a href="https://gluonhq.com/the-art-of-the-backport-why-javafx-security-doesnt-just-happen/" target="_blank" rel="noopener noreferrer"&gt;The Art of the Backport: Why JavaFX Security Doesn&amp;rsquo;t &amp;ldquo;Just Happen&amp;rdquo;&lt;/a&gt;: &amp;ldquo;&lt;em&gt;In a perfect world, keeping a tech stack current is as simple as bumping a version number in a pom.xml or build.gradle file. You run a clean build, and suddenly, the latest fixes are integrated. But for those of us building mission-critical desktop and embedded applications, &amp;ldquo;just upgrading&amp;rdquo; to the latest major release isn&amp;rsquo;t always feasible. When your application is built on a stable Long Term Support (LTS) foundation, you need that environment to remain predictable. You want the stability of your current version, but you absolutely need the security fixes that are discovered in the newer branches. This is where the &amp;ldquo;Art of the Backport&amp;rdquo; comes in, and it&amp;rsquo;s a significant part of the heavy lifting we do at Gluon.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;Related to the announcement of the Oracle Java Verified Portfolio (JVP) and the reintroduction of commercial support for JavaFX, &lt;strong&gt;Frank Delporte&lt;/strong&gt; wrote a blog: &lt;a href="https://www.azul.com/blog/the-javafx-revival-good-news-for-the-community-business-as-usual-for-azul/" target="_blank" rel="noopener noreferrer"&gt;The JavaFX Revival: Good News for the Community, Business as Usual for Azul&lt;/a&gt;.&lt;/li&gt;&#10;&lt;li&gt;Already want to experiment with JavaFX 27? Check the &lt;a href="https://jdk.java.net/javafx27/" target="_blank" rel="noopener noreferrer"&gt;early-access builds&lt;/a&gt;.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="applications"&gt;Applications&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;LogoRRR announced &lt;a href="https://github.com/rladstaetter/LogoRRR/releases/tag/26.2.0" target="_blank" rel="noopener noreferrer"&gt;release 26.2.0&lt;/a&gt;. &lt;a href="https://www.youtube.com/watch?v=4INweBlGWoQ" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Robert Ladstätter&lt;/strong&gt; published a video showing the new features&lt;/a&gt;.&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/mapton.org/post/3mfysk3uxw22d" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Mapton&lt;/strong&gt; announced&lt;/a&gt;: &amp;ldquo;_&lt;a href="https://github.com/trixon/mapton/releases" target="_blank" rel="noopener noreferrer"&gt;Here is a new version of Mapton&lt;/a&gt;!, &amp;lsquo;some kind of map application&amp;rsquo;, built with Jva &amp;amp; JavaFX on the Netbeans platform. Let&amp;rsquo;s call this one the &lt;code&gt;MARKDOWN_HASHca329fd857db05db392388a1d1c2b7f9MARKDOWN&lt;/code&gt;&lt;em&gt;HASH&lt;/em&gt;. Enjoy!&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.linkedin.com/feed/update/urn:li:groupPost:10070360-7435938631854419968/" target="_blank" rel="noopener noreferrer"&gt;Message by &lt;strong&gt;Jakob Jenkov&lt;/strong&gt;&lt;/a&gt; : &amp;ldquo;&lt;em&gt;I have started the process of building up the Polymorph Player in Java 25 and JavaFX 25. The code will now be located in the &lt;a href="https://github.com/jjenkov/polymorph" target="_blank" rel="noopener noreferrer"&gt;Polymorph mono-repo&lt;/a&gt;. The first bits are already there, but the player app does not do anything yet, except starting up 😊 But from now on, you can always clone or pull this repo to see just exactly how much is working, officially. This is a project where we can allow ourselves to question the entire current status quo of tech. Some should be kept - but other parts could probably be replaced with better formats / models / architectures. Let&amp;rsquo;s experiment to see what works, and what doesn&amp;rsquo;t.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://github.com/fredericksalazar/OllamaFX/releases/tag/v0.5.0" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Frederick Salazar&lt;/strong&gt; released OllamaFX v0.5.0&lt;/a&gt;. &amp;ldquo;&lt;em&gt;OllamaFX is a modern, native desktop client for Ollama, built with JavaFX. It provides a beautiful, user-friendly interface to manage your local LLMs and chat with them, featuring a sleek GNOME/Adwaita-inspired design.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Robert von Burg&lt;/strong&gt; shared the &lt;a href="https://github.com/eitch/LumineLog" target="_blank" rel="noopener noreferrer"&gt;sources of LumineLog&lt;/a&gt;: &amp;ldquo;&lt;em&gt;A modern, cross-platform log viewer application built with JavaFX. It provides a real-time &amp;rsquo;tail -f&amp;rsquo; experience with powerful highlighting and multi-file support.&lt;/em&gt; &amp;quot;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://mstdn.gsi.li/@eitch/116285194315067384" target="_blank" rel="noopener noreferrer"&gt;Release of LumineLog 0.3.0&lt;/a&gt;: &amp;ldquo;_A modern, cross-platform log viewer application built with JavaFX. It provides a real-time &lt;code&gt;MARKDOWN_HASHc21d50ccb3e2b0daf559d6015794f6a7MARKDOWN&lt;/code&gt;&lt;em&gt;HASH&lt;/em&gt; experience with powerful highlighting and multi-file support. As always, feedback is welcome. Feel free to &lt;a href="https://github.com/eitch/LumineLog" target="_blank" rel="noopener noreferrer"&gt;raise a ticket&lt;/a&gt;.&amp;rdquo;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/rladstaetter.bsky.social/post/3mhaoaaiw6s2k" target="_blank" rel="noopener noreferrer"&gt;Message by &lt;strong&gt;Robert Ladstätter&lt;/strong&gt;&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Just released CameraApp on Windows and Linux appstores! &lt;a href="https://github.com/rladstaetter/CameraApp" target="_blank" rel="noopener noreferrer"&gt;Check out this project&lt;/a&gt; which resurrects my old passion of doing work with JavaCV and JavaFX. This project can be used as a starting point for experiments with OpenCV and Java.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="components-libraries-tools"&gt;Components, Libraries, Tools&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;strong&gt;Frank Delporte&lt;/strong&gt; announced the first release of Lottie4J, a new Java(FX) library: &amp;ldquo;&lt;em&gt;With this library, you can load and parse LottieFiles animations as Java objects, and integrate them as a JavaFX animation component in your application. Watch &lt;a href="https://www.youtube.com/watch?v=6t1O7APENIo" target="_blank" rel="noopener noreferrer"&gt;this video for more info&lt;/a&gt; or &lt;a href="https://webtechie.be/post/2026-03-03-introducing-lottie4j/" target="_blank" rel="noopener noreferrer"&gt;read this blog&lt;/a&gt;.&lt;/em&gt; &amp;quot;&#10;&lt;ul&gt;&#10;&lt;li&gt;Followed by release V1.1.0 of &lt;a href="https://github.com/lottie4j/lottie4j" target="_blank" rel="noopener noreferrer"&gt;Lottie4J&lt;/a&gt;, a JavaFX player for LottieFiles animations. &amp;ldquo;&lt;em&gt;This release includes improved rendering and additional debugging tools. And of course, it also uses the new and animated Lottie4J logo for testing 😉&lt;/em&gt; &amp;quot; All info and a video demonstration are available &lt;a href="https://lottie4j.com/releases/" target="_blank" rel="noopener noreferrer"&gt;on the website in the release notes&lt;/a&gt;.&lt;/li&gt;&#10;&lt;li&gt;And another release: &amp;ldquo;&lt;em&gt;Version 1.2.0 of &lt;a href="https://lottie4j.com/index.html" target="_blank" rel="noopener noreferrer"&gt;Lottie4J&lt;/a&gt; is out, and it&amp;rsquo;s again a big release! The headline feature is support for the dotLottie zip-container format, but that&amp;rsquo;s just the start. This release also brings marker-based playback, cropping, adaptive rendering, significant performance improvements, and a lot of core model fixes driven by testing more complex real-world animations. Detailed info and a video showing all new features are &lt;a href="https://webtechie.be/post/2026-03-20-release-1.2.0-of-lottie4j/" target="_blank" rel="noopener noreferrer"&gt;explained in this blog post&lt;/a&gt;.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;li&gt;A &lt;a href="https://dev.to/liu_tiger_ef0f0505e13c8be/javafx-ui-automation-challenges-existing-tools-and-real-world-event-handling-problems-57k" target="_blank" rel="noopener noreferrer"&gt;good read by &lt;strong&gt;Liu Tiger&lt;/strong&gt;&lt;/a&gt;: &amp;ldquo;&lt;em&gt;JavaFX UI Automation: Challenges, Existing Tools, and Real-World Event Handling Problems. Automation testing has become a fundamental component of modern software engineering. In web development, automation ecosystems such as Selenium, Playwright, and Cypress are mature and widely adopted. However, the situation is very different for Java desktop applications, particularly those built using JavaFX.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.linkedin.com/in/pavelcastornii/" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Pavel Castornîi&lt;/strong&gt;&lt;/a&gt; is preparing a new release of &lt;a href="https://github.com/techsenger/tabshell" target="_blank" rel="noopener noreferrer"&gt;TabShell&lt;/a&gt;, &amp;ldquo;&lt;em&gt;a platform for building tab-based applications in JavaFX, where an application is structured as a tree of MVP components, each of which has its own lifecycle, history, etc. The platform provides abstract classes for creating the main types of components: tab, area, page, dialog, and popup, as well as containers for them.&lt;/em&gt;&amp;rdquo; Try it out and let him know if there are any remarks&amp;hellip;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://github.com/HanSolo/svgconverter" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Gerrit Grunwald&lt;/strong&gt; created svgconverter&lt;/a&gt;: &amp;ldquo;&lt;em&gt;An SVG to JavaFX converter that can handle nearly everything except animations and masking. You can load a svg file and render it either to the JavaFX SceneGraph using nodes or to the JavaFX Canvas. It took some time to get the Canvas thing working because it is missing some things but now it works kind of ok.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Dirk Lemmermann&lt;/strong&gt; announced: &amp;ldquo;&lt;em&gt;I created a new &lt;a href="https://dlsc-software-consulting-gmbh.github.io/GemsFX/" target="_blank" rel="noopener noreferrer"&gt;website for GemsFX&lt;/a&gt; that will give you an idea which controls are available in this library.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/leewyatt.bsky.social/post/3mhvd52wuks2u" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Lee Wyatt&lt;/strong&gt; shared the new library CarouselFX&lt;/a&gt;: &amp;ldquo;&lt;em&gt;A JavaFX carousel / slideshow component with 70+ built-in transition effects.&lt;/em&gt; &amp;quot; &lt;a href="https://www.youtube.com/watch?v=oFeuHs_HFwU" target="_blank" rel="noopener noreferrer"&gt;Demo on YouTube&lt;/a&gt; and &lt;a href="https://github.com/dlsc-software-consulting-gmbh/CarouselFX" target="_blank" rel="noopener noreferrer"&gt;sources on GitHub&lt;/a&gt;.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="podcasts-videos-books"&gt;Podcasts, Videos, Books&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=5T5DI23rJxE" target="_blank" rel="noopener noreferrer"&gt;GNUBSD404 Long N162 PacMan XXL (JavaFX Game) (Linux/FreeBSD)&lt;/a&gt;: &amp;ldquo;&lt;em&gt;This is another example of a &amp;ldquo;Quality&amp;rdquo; game on Linux made by some developers. THANKS ! to this developers is that Linux/FreeBSD gaming (and off course thanks to Valve and Steam) is alive!. The game is available on Linux andFreeBSD may work with OpenJDK or may require Linuxuator.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;New video by &lt;strong&gt;Helal Anwar&lt;/strong&gt; : &lt;a href="https://www.youtube.com/watch?v=ZHnSynN5R3Y" target="_blank" rel="noopener noreferrer"&gt;Student management app (Part 6)&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Florian Enner&lt;/strong&gt; published a video demonstrating &lt;a href="https://www.youtube.com/live/B5GT9XAcqB8" target="_blank" rel="noopener noreferrer"&gt;HebiCharts&lt;/a&gt;: &amp;ldquo;&lt;em&gt;A 2D and 3D plotting library built in JavaFX with ChartFX, compiled as GraalVM native-image, and accessible from Python / C++ / MATLAB via idiomatic interface over a C ABI.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="miscellaneous"&gt;Miscellaneous&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/rladstaetter.bsky.social/post/3mg3f6kort22e" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Robert Ladstätter&lt;/strong&gt; is experimenting with JavaFX 26 and shared a video&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Vibe coding an editable ToolBar for #JavaFX supporting drag&amp;rsquo;n drop for the editable Search Term Toolbar Feature. It is amazing how easy it is to implement such things with JavaFX. Looking forward to JavaFX26 which will be released soon.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://dev.to/sikorsky43/building-a-tcp-group-chat-app-with-javafx-and-maven-1e46" target="_blank" rel="noopener noreferrer"&gt;Interesting read by &lt;strong&gt;SikorSky&lt;/strong&gt;&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Building a Real-Time Group Chat with Java TCP Sockets and JavaFX. We recently implemented a mini project where the objective was to build a real-time group chat application using Java TCP sockets and JavaFX. This article summarizes the architecture, design decisions, and lessons learned during development.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/dlemmermann.bsky.social/post/3mgflg35sgc2u" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Dirk Lemmermann&lt;/strong&gt;&lt;/a&gt; &amp;ldquo;&lt;em&gt;did some more evaluation of GitHub Copilot CLI today and built a nice launcher app for my GemsFX open source project. The productivity I get out of this surpassed all my expectations.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://gluonhq.com/why-spend-a-week-on-a-bug-that-we-can-fix-in-an-hour/" target="_blank" rel="noopener noreferrer"&gt;Post by Gluon&lt;/a&gt;: &amp;ldquo;&lt;em&gt;We&amp;rsquo;ve all been there. You&amp;rsquo;re working on a JavaFX application, and you hit that wall. Maybe it&amp;rsquo;s a strange rendering glitch on a specific OS, a memory leak you can&amp;rsquo;t pin down, or a performance bottleneck that only appears in production. You search the forums. You check Stack Overflow. You spend days tweaking code, hoping for a breakthrough. There is a faster way! To make it easier for teams to experience the value of expert support, we are introducing a one-time JavaFX Quick-Fix Package.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="jfx-central"&gt;JFX Central&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;New content on JFX Central:&#10;&lt;ul&gt;&#10;&lt;li&gt;Library: &lt;a href="https://www.jfx-central.com/libraries/lottie4j" target="_blank" rel="noopener noreferrer"&gt;Lottie4J&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;Libraries: &lt;a href="https://www.jfx-central.com/libraries/tabshell" target="_blank" rel="noopener noreferrer"&gt;TabShell&lt;/a&gt; got updated.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;li&gt;Internal improvements in JFX Central with latest release of &lt;a href="https://www.jpro.one/" target="_blank" rel="noopener noreferrer"&gt;JPro&lt;/a&gt;.&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/dlemmermann.bsky.social/post/3mgs3b37pjc2p" target="_blank" rel="noopener noreferrer"&gt;Screenshots shared by &lt;strong&gt;Dirk Lemmermann&lt;/strong&gt;&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Thanks to the efforts of several open source developers we can now display syntax-highlighted code in markdown files via JPro Markdown by &lt;a href="https://bsky.app/profile/floriankirmaier.bsky.social" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Florian Kirmaier&lt;/strong&gt;&lt;/a&gt;. Available hopefully by the end of the week.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/dlemmermann.bsky.social/post/3mhxunuetrk2h" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Dirk Lemmermann&lt;/strong&gt; shared another screenshot&lt;/a&gt;: &amp;ldquo;&lt;em&gt;We finally moved to JavaFX 25 for JFX Central and this now allows us to use StageStyle.EXTENDED. Sounds like a minor thing but allows apps to look much more native than before. No more custom resizing borders and behaviour.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;The JavaFX Links Of The Week of February got bundled and &lt;a href="https://foojay.io/today/javafx-links-of-february-2026/"&gt;published on Foojay.io&lt;/a&gt;.&lt;/li&gt;&#10;&lt;/ul&gt;</description></item><item><title>Lottie4J 1.2.0: dotLottie Support, Marker Playback, Cropping, and a Big Speed Boost</title><link>https://foojay.io/today/lottie4j-1-2-0-dotlottie-support-marker-playback-cropping-and-a-big-speed-boost/</link><pubDate>Tue, 24 Mar 2026 07:51:00 +0000</pubDate><guid>https://foojay.io/today/lottie4j-1-2-0-dotlottie-support-marker-playback-cropping-and-a-big-speed-boost/</guid><description>&lt;p&gt;Version 1.2.0 of &lt;a href="https://lottie4j.com" target="_blank" rel="noopener noreferrer"&gt;Lottie4J&lt;/a&gt; is out, and it&amp;rsquo;s again a big release! The headline feature is support for the &lt;code&gt;.lottie&lt;/code&gt; container format, but that&amp;rsquo;s just the start. This release also brings marker-based playback, cropping, adaptive rendering, significant performance improvements, and a lot of core model fixes driven by testing more complex real-world animations.&lt;/p&gt;&#10;&lt;div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;"&gt;&#10;&#9;&#9;&#9;&lt;iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen" loading="eager" referrerpolicy="strict-origin-when-cross-origin" src="https://www.youtube.com/embed/9lE6UO8XNpU?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" title="YouTube video"&gt;&lt;/iframe&gt;&#10;&#9;&#9;&lt;/div&gt;&#10;&#10;&lt;h2 id="dotlottie-file-support"&gt;dotLottie File Support&lt;/h2&gt;&#10;&lt;p&gt;Until now, Lottie4J only supported the plain JSON format (&lt;code&gt;.json&lt;/code&gt;). That&amp;rsquo;s the original Lottie format, but LottieFiles also introduced a newer container format: &lt;code&gt;.lottie&lt;/code&gt;. It&amp;rsquo;s essentially a ZIP archive that can hold one or more animations, embedded images, sounds, and a manifest file that describes the contents.&lt;/p&gt;</description></item><item><title>Lottie4J 1.1.0: Better Rendering, Smarter Debugging, and an animated Lottie4J Logo!</title><link>https://foojay.io/today/lottie4j-1-1-0-better-rendering-smarter-debugging/</link><pubDate>Fri, 13 Mar 2026 07:30:00 +0000</pubDate><guid>https://foojay.io/today/lottie4j-1-1-0-better-rendering-smarter-debugging/</guid><description>&lt;p&gt;Just one week after the first public release of &lt;a href="https://lottie4j.com" target="_blank" rel="noopener noreferrer"&gt;Lottie4J&lt;/a&gt;, the open-source Java library for rendering Lottie animations in JavaFX, version 1.1.0 is already out. And it&amp;rsquo;s a big one!&lt;/p&gt;&#10;&lt;p&gt;A lot happened in that one week. A logo was designed for the project, a Lottie animation was created for that logo (naturally!), and, most importantly, a significant number of rendering improvements landed after testing a much wider range of animation files. That&amp;rsquo;s the reason for the version bump from &lt;code&gt;1.0.0&lt;/code&gt; to &lt;code&gt;1.1.0&lt;/code&gt;: there are some API changes that come with it.&lt;/p&gt;</description></item><item><title>Introducing Lottie4J, a Java(FX) Library to Parse and Play Lottie Animation Files</title><link>https://foojay.io/today/introducing-lottie4j-a-javafx-library-to-parse-and-play-lottie-animation-files/</link><pubDate>Tue, 10 Mar 2026 08:24:00 +0000</pubDate><guid>https://foojay.io/today/introducing-lottie4j-a-javafx-library-to-parse-and-play-lottie-animation-files/</guid><description>&lt;p&gt;I&amp;rsquo;m proud to present a new JavaFX library: &lt;strong&gt;Lottie4J&lt;/strong&gt;, that brings Lottie animations to JavaFX applications. I first learned about Lottie many years ago when we were developing a mobile app. We used Lottie animations to explain to users how to operate a physical device. The animations made the instructions so much clearer than static images or text alone.&lt;/p&gt;&#10;&lt;p&gt;At the time, I wanted to create a similar experience in JavaFX, but I couldn&amp;rsquo;t find a JavaFX player for the Lottie format. So I decided to build one myself. What I didn&amp;rsquo;t realize then was just how complex this journey would be&amp;hellip;&lt;/p&gt;</description></item><item><title>JavaFX Links of February 2026</title><link>https://foojay.io/today/javafx-links-of-february-2026/</link><pubDate>Sat, 28 Feb 2026 10:13:52 +0000</pubDate><guid>https://foojay.io/today/javafx-links-of-february-2026/</guid><description>&lt;p&gt;Here are the JavaFX LinksOfTheMonth of February 2026. You can find the weekly lists on &lt;a href="https://www.jfx-central.com/links" target="_blank" rel="noopener noreferrer"&gt;jfx-central.com&lt;/a&gt;. Did we miss anything? Is there anything you want to have included in one of the next overviews? Let us know via &lt;a href="mailto:links@jfx-central.com"&gt;links@jfx-central.com&lt;/a&gt;.&lt;/p&gt;&#10;&lt;h2 id="applications"&gt;Applications&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Amazing work by &lt;strong&gt;CommonGround_2048&lt;/strong&gt; : &amp;ldquo;&lt;em&gt;Excited to share Cycle Power, a complete cycling ecosystem built entirely with Java! From a native mobile app to a web dashboard, it&amp;rsquo;s &amp;lsquo;Java Everywhere&amp;rsquo; in action. Huge thanks to &lt;strong&gt;Johan Vos&lt;/strong&gt; and the Gluon team for making native mobile Java a reality. It&amp;rsquo;s &amp;lsquo;Java Everywhere&amp;rsquo; in action!&lt;/em&gt; &amp;quot; Check &lt;a href="https://mastodon.social/@CommonGround_2048/116092121019823454" target="_blank" rel="noopener noreferrer"&gt;the thread on Mastodon for screenshots&lt;/a&gt;.&#10;&lt;ul&gt;&#10;&lt;li&gt;&amp;ldquo;&lt;em&gt;The Mobile App (Android/iOS) uses GluonFX &amp;amp; JavaFX for a high-performance native experience.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&amp;ldquo;&lt;em&gt;The Web Dashboard is the cherry on top! Built with #WebFX, it transpiles JavaFX directly to JavaScript.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://mastodon.social/@johanvos/116093437764667818" target="_blank" rel="noopener noreferrer"&gt;Reply by &lt;strong&gt;Johan Vos&lt;/strong&gt;&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Fantastic work! Java and JavaFX are extremely suitable for many end-to-end applications, bridging the gap between user-friendly applications and enterprise data platforms.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://foojay.social/@jabref/116025388844914606" target="_blank" rel="noopener noreferrer"&gt;JabRef news&lt;/a&gt;: &amp;ldquo;&lt;em&gt;In the latest development version, JabRef now supports multiple citation fetchers/providers, including SemanticScholar, crossref, opencitations, and OpenAlex. And at the bottom we provide some additional metrics from scite.ai. &lt;a href="https://builds.jabref.org/main/" target="_blank" rel="noopener noreferrer"&gt;Grab the version here&lt;/a&gt;. PS: This version now uses also JavaFX 25.02 and JDK 25.02. -&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/tom-doerr.bsky.social/post/3mezxgtgt3f2e" target="_blank" rel="noopener noreferrer"&gt;Message with screenshot by &lt;strong&gt;Tom Dörr&lt;/strong&gt;&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Customizable application dock for Windows built with JavaFX.&lt;/em&gt; &amp;quot; You can &lt;a href="https://github.com/arthurdeka/cedro-modern-dock" target="_blank" rel="noopener noreferrer"&gt;find it on GitHub&lt;/a&gt;.&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/lidianycs.bsky.social/post/3meykpmad6s2p" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Lidiany Cerqueira&lt;/strong&gt; announced a new release of CERCA&lt;/a&gt;, the Citation Extraction &amp;amp; Reference Checking Assistant, with support for Semantic Scholar&amp;rsquo;s API. Get it from &lt;a href="https://sourceforge.net/projects/cerca/" target="_blank" rel="noopener noreferrer"&gt;Sourceforge&lt;/a&gt; or check the &lt;a href="https://github.com/lidianycs/cerca" target="_blank" rel="noopener noreferrer"&gt;code on GitHub&lt;/a&gt;.&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/logorrr.bsky.social/post/3mfaiintmjk2v" target="_blank" rel="noopener noreferrer"&gt;Message with screenshot by LogoRRR&lt;/a&gt;: &amp;ldquo;&lt;em&gt;LogoRRR just got a major facelift. Analysing logs has never looked this good 😉 &lt;a href="https://www.logorrr.app/posts/release-26.1.0/" target="_blank" rel="noopener noreferrer"&gt;Get it here&lt;/a&gt;&lt;/em&gt;.&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Vitor Pereira&lt;/strong&gt; is working on his version of Wireshark and &lt;a href="https://www.linkedin.com/posts/vitordef_java-softwareengineering-performance-activity-7431169143522914304-vOW8/" target="_blank" rel="noopener noreferrer"&gt;shared some ot the challenges and solutions&lt;/a&gt;: &amp;ldquo;&lt;em&gt;The result was a 5x reduction in RAM usage. I dropped from 5GB on 800,000 packets down to just 1GB.&lt;/em&gt; &amp;quot; Check &lt;a href="https://github.com/VitorDeF/PacketAnalyser" target="_blank" rel="noopener noreferrer"&gt;Java Packet Analyzer on GitHub&lt;/a&gt; for the sources.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="components-libraries-tools"&gt;Components, Libraries, Tools&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Library updates by &lt;strong&gt;Dirk Lemmermann&lt;/strong&gt; :&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/dlemmermann.bsky.social/post/3mdv6tqelnk2a" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Dirk Lemmermann&lt;/strong&gt; shared a screenshot&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Just finished putting a &amp;lsquo;Mail App Demo&amp;rsquo; together for GemsFX. It shows how you can leverage the &amp;lsquo;TagsField&amp;rsquo;&amp;rdquo;&amp;rsquo; to implement the email address lookup in a user-friendly way.&lt;/em&gt; &amp;quot; Check the GemsFX library &lt;a href="https://github.com/dlsc-software-consulting-gmbh/GemsFX" target="_blank" rel="noopener noreferrer"&gt;on GitHub&lt;/a&gt;.&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/dlemmermann.bsky.social/post/3melv56fvhs2p" target="_blank" rel="noopener noreferrer"&gt;On Bluesky with screenshot&lt;/a&gt;: &amp;ldquo;&lt;em&gt;I revisited the PopOver control that I wrote years ago. I noticed that the clipping wasn&amp;rsquo;t working perfectly and that the placement logic had issues (to say the least), which caused the popover arrow to point at the wrong location. It&amp;rsquo;s all fixed now and will be in the next GemsFX release.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/dlemmermann.bsky.social/post/3melvqalpnc2n" target="_blank" rel="noopener noreferrer"&gt;Release 3.9.0 of GemsFX&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/dlemmermann.bsky.social/post/3mfm7pcta5223" target="_blank" rel="noopener noreferrer"&gt;Release 3.10.0 of GemsFX&lt;/a&gt; : &amp;ldquo;&lt;em&gt;It contains a new feature for the InfoCenterPane allowing you to specify where to show notifications (upper left, upper right, etc&amp;hellip;).&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;li&gt;A new library by &lt;strong&gt;Gerrit Grunwald&lt;/strong&gt; : &lt;a href="https://github.com/HanSolo/splitflap26" target="_blank" rel="noopener noreferrer"&gt;SplitFlap 2026&lt;/a&gt;: &amp;ldquo;&lt;em&gt;A JavaFX implementation of a SplitFlap component.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.linkedin.com/posts/sjhannah_javafx-java-desktopdevelopment-activity-7428512640110383104-C1jH/" target="_blank" rel="noopener noreferrer"&gt;Message by &lt;strong&gt;Steve Hannah&lt;/strong&gt; on LinkedIn&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Most desktop apps feel disconnected from the web. You can&amp;rsquo;t link directly into them. You can&amp;rsquo;t share a URL that opens a specific screen. Users have to manually navigate after launching. I just added deep linking to jDeploy 6.0 for JavaFX apps. Now you can register custom URL schemes like: &amp;lsquo;myapp://settings&amp;rsquo; and &amp;lsquo;myapp://document/123&amp;rsquo;. Click the link and your app opens directly to that view. Works on macOS, Windows, and Linux. I wrote a &lt;a href="https://www.jdeploy.com/docs/tutorials/deep-linking-javafx/" target="_blank" rel="noopener noreferrer"&gt;tutorial showing how to set it up step by step&lt;/a&gt;.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="podcasts-videos-books"&gt;Podcasts, Videos, Books&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;New video by &lt;strong&gt;Helal Anwar&lt;/strong&gt; showing new features in his : &lt;a href="https://www.youtube.com/watch?v=rhRcOt3TUy4" target="_blank" rel="noopener noreferrer"&gt;Student management app (Part 5)&lt;/a&gt;. Sources of the project &lt;a href="https://github.com/24F3004969/GradedAttendance" target="_blank" rel="noopener noreferrer"&gt;are on GitHub&lt;/a&gt;.&lt;/li&gt;&#10;&lt;li&gt;New JavaFX In Action interview published by &lt;strong&gt;Frank Delporte&lt;/strong&gt; : &amp;ldquo;&lt;em&gt;While reviewing scientific papers, &lt;strong&gt;Lidiany Cerqueira&lt;/strong&gt; had a recurring problem: each reference needed to be checked, as more and more of them were #hallucinations introduced by LLMs and Chatbots. As a solution, she created CERCA during her Christmas holiday. Thanks to #Java, #JavaFX, open-source libraries, and free APIs, the number of references to be checked gets reduced a lot, making her work and that of many other reviewers a lot easier!&lt;/em&gt; &amp;quot; You can find the &lt;a href="https://www.youtube.com/watch?v=QVN57j1zcik" target="_blank" rel="noopener noreferrer"&gt;video interview on YouTube&lt;/a&gt; and &lt;a href="https://webtechie.be/post/2026-02-05-jfxinaction-lidiany-cerqueira-cerca/" target="_blank" rel="noopener noreferrer"&gt;more info in this blog post&lt;/a&gt;.&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Frank Delporte&lt;/strong&gt; took a next stop in his &amp;ldquo;2026 #JavaOnSingleBoardComputers Journey&amp;rdquo; with four BeagleBoards (2x #Arm, 2x #RISCV). With his first quick unboxing and test, he got Java(FX) running on the BeagleY-AI. The &lt;a href="https://www.youtube.com/watch?v=pZ8hMuQbk8Y" target="_blank" rel="noopener noreferrer"&gt;video is available on YouTube&lt;/a&gt; with more info, links, and details &lt;a href="https://webtechie.be/post/2026-02-10-first-test-beagleboard-java/" target="_blank" rel="noopener noreferrer"&gt;in this blog post&lt;/a&gt;.&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Frank Delporte&lt;/strong&gt; published a new interview in his &amp;ldquo;JavaFX In Action&amp;rdquo; series: &amp;ldquo;&lt;em&gt;&lt;strong&gt;Helal Anwar&lt;/strong&gt; builds impressive educational tools with Java and JavaFX. In this interview, we discuss his GradedAttendance application and other projects he&amp;rsquo;s working on.&lt;/em&gt; &amp;quot; The &lt;a href="https://www.youtube.com/watch?v=pbQZK68tplA" target="_blank" rel="noopener noreferrer"&gt;video is on YouTube&lt;/a&gt; with &lt;a href="https://webtechie.be/post/2026-02-19-jfxinaction-helal-anwar-gradedattendance/" target="_blank" rel="noopener noreferrer"&gt;more info in this blog post&lt;/a&gt;.&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=0kpWW36GDKs" target="_blank" rel="noopener noreferrer"&gt;Video by &lt;strong&gt;Florian Enner&lt;/strong&gt;&lt;/a&gt;: &amp;ldquo;&lt;em&gt;POC: JavaFX native-image snapshots integrated into wxPython. A JavaFX application compiled as a native-image and called from Python. The wxPython GUI updates the JavaFX state and integrates the JavaFX snapshot as an image.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=7vtGXLgZ3XQ" target="_blank" rel="noopener noreferrer"&gt;Video by &lt;strong&gt;Sethlans Forge&lt;/strong&gt;&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Vulkan rendering surface embedded inside a JavaFX application, using Java and LWJGL. This setup demonstrates how low-level Vulkan rendering can coexist with a high-level JavaFX UI, enabling tools, editors, or engine frontends built in Java while keeping full control over the GPU. This is part of the development of Sethlans, a Vulkan graphics engine written in Java, focusing on modern rendering, engine architecture, and low-level GPU control.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=q8sXNXR6iKc" target="_blank" rel="noopener noreferrer"&gt;Video by &lt;strong&gt;Ken Kousen&lt;/strong&gt;&lt;/a&gt;: &amp;ldquo;&lt;em&gt;I Built a Star Trek Computer with Java 25 &amp;amp; Spring AI. Is it possible to launch a full Spring Boot AI application in 35 milliseconds? Yes—if you use the right tools. In this video, we aren&amp;rsquo;t just faking a sci-fi UI. We are building the actual ENGINE of a Star Trek computer using the latest in the Java ecosystem: Java 25, Spring AI, and the Model Context Protocol (MCP), using Java FX Voice Interface at 10'50&amp;rdquo;.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.linkedin.com/posts/helal-anwar-94571016b_java-javafx-iitm-activity-7428570421710557184-EY9n/" target="_blank" rel="noopener noreferrer"&gt;Video published on LinkedIn by &lt;strong&gt;Helal Anwar&lt;/strong&gt;&lt;/a&gt;: &amp;ldquo;&lt;em&gt;ChessFX made in 10 minutes (Fully vibe coded). Fully written in JavaFX. This is a solid version given the time we had. I believe we can leverage LLMs to build Java and JavaFX applications. If not fully fledged products, then at least substantial parts, since the ecosystem is mature and there&amp;rsquo;s plenty of data available. Just my opinion 😊.&lt;/em&gt; &amp;quot; The &lt;a href="https://github.com/24F3004969/GradedAttendance/blob/main/src/main/java/org/graded_classes/graded_attendance/test/ChessFX.java" target="_blank" rel="noopener noreferrer"&gt;source (in one single file!) is available on GitHub&lt;/a&gt;.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="tutorials"&gt;Tutorials&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;strong&gt;Nicolas Frankel&lt;/strong&gt; published do Foojay.io: &lt;a href="https://foojay.io/today/from-a-jar-to-a-full-fledged-macos-app/"&gt;From a JAR to a full-fledged MacOS app&lt;/a&gt;. &amp;ldquo;&lt;em&gt;The solution is straightforward: create a regular MacOS app from the UberJAR. At its simplest, a MacOS app is only a folder with a specific structure. You could replicate it by hand, but I&amp;rsquo;m lazy, and there are tools for this. jpackage is such a tool. jpackage is one of the tools I learned about, am ecstatic about, used once, and forgot until the next time. Add one to the counter.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="miscellaneous"&gt;Miscellaneous&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://robintegg.com/2026/02/08/java-ui-in-2026-the-complete-guide" target="_blank" rel="noopener noreferrer"&gt;Java UI in 2026: The Complete Guide&lt;/a&gt; by &lt;a href="https://bsky.app/profile/robintegg.bsky.social" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Robin Tegg&lt;/strong&gt;&lt;/a&gt;: &amp;ldquo;&lt;em&gt;When developers think about building user interfaces today, the conversation often revolves around the same familiar choices. But Java offers a fully modern, end-to-end alternative — desktop, web, terminal, and even mobile apps — all powered by a single language. With one cohesive Java stack, teams and AI tools can reason, build, and iterate more efficiently than ever.&lt;/em&gt; &amp;quot;&#10;&lt;ul&gt;&#10;&lt;li&gt;This guide (and JavaFX) are also mentioned in the &lt;a href="https://www.linkedin.com/pulse/java-reaches-gpu-records-fall-off-cliff-gatherers-prove-skowro%C5%84ski-rnqlf/" target="_blank" rel="noopener noreferrer"&gt;JVM Weekly newsletter&lt;/a&gt; by &lt;a href="https://bsky.app/profile/askowronski.bsky.social" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Artur Skowroński&lt;/strong&gt;&lt;/a&gt;.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.linkedin.com/feed/update/urn:li:activity:7424168822129025024/" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Jakob Jenkov&lt;/strong&gt; shared a quick update about the Polymorph project&lt;/a&gt;: &amp;ldquo;&lt;em&gt;The Polymorph Player is beginning to take shape. It can only display some very simple graphics at this point, so I will not include a screenshot in this post. At this point the main structural design is reasonably in place. From here on it is hundreds, if not thousands, of small improvements that need to be added before the Player has a somewhat useful and coherent base set of functionality. These improvements are both in the Player itself, and in the Polymorph Tools toolkit - especially in the virtual machine that executes the scripts which can be run from within the Player app. Lots of work to do ! &amp;hellip; but it&amp;rsquo;s in progress ! 😊 The Player app is made with JavaFX, by the way! ☺️&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;Created by &lt;a href="https://bsky.app/profile/robintegg.bsky.social" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Robin Tegg&lt;/strong&gt;&lt;/a&gt;: &lt;a href="https://awesome-java-ui.com/" target="_blank" rel="noopener noreferrer"&gt;Awesome Java UI&lt;/a&gt;. &amp;ldquo;&lt;em&gt;This site provides an overview of the latest and greatest Java UI projects, frameworks and libraries, along with their status, Java version compatibility, learning curve, last release date, and more. Explore the projects to find the right Java UI solution for your needs. This is a community-driven resource, built by Java developers for Java developers. Whether you&amp;rsquo;re discovering a new framework, sharing your expertise, or helping others navigate the Java UI landscape - your contributions make this guide better for everyone. Join us in building the most comprehensive resource for Java UI development!&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="jfx-central"&gt;JFX Central&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;New content on JFX Central:&#10;&lt;ul&gt;&#10;&lt;li&gt;Video: &lt;a href="https://www.jfx-central.com/videos/QVN57j1zcik" target="_blank" rel="noopener noreferrer"&gt;JavaFX In Action with &lt;strong&gt;Lidiany Cerqueira&lt;/strong&gt; about CERCA&lt;/a&gt;, an open-source research tool that supports the verification of bibliographic references in scientific manuscripts.&lt;/li&gt;&#10;&lt;li&gt;Video: &lt;a href="https://www.jfx-central.com/videos/pbQZK68tplA" target="_blank" rel="noopener noreferrer"&gt;JavaFX In Action with Helal Anwar about GradedAttendance&lt;/a&gt;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;li&gt;JFX Central got bumped to JavaFX 25 and &lt;a href="https://www.jpro.one/" target="_blank" rel="noopener noreferrer"&gt;JPro 2026.1.1&lt;/a&gt; to fix a few styling issues.&lt;/li&gt;&#10;&lt;li&gt;The links of January 2026 got &lt;a href="https://foojay.io/today/javafx-links-of-january-2026/"&gt;published on Foojay&lt;/a&gt;.&lt;/li&gt;&#10;&lt;/ul&gt;</description></item><item><title>JavaFX Links of January 2026</title><link>https://foojay.io/today/javafx-links-of-january-2026/</link><pubDate>Sat, 31 Jan 2026 08:57:06 +0000</pubDate><guid>https://foojay.io/today/javafx-links-of-january-2026/</guid><description>&lt;p&gt;Here are the JavaFX LinksOfTheMonth of January 2026. You can find the weekly lists on &lt;a href="https://www.jfx-central.com/links" target="_blank" rel="noopener noreferrer"&gt;jfx-central.com&lt;/a&gt;. Did we miss anything? Is there anything you want to have included in one of the next overviews? Let us know via &lt;a href="mailto:links@jfx-central.com"&gt;links@jfx-central.com&lt;/a&gt;.&lt;/p&gt;&#10;&lt;h2 id="core"&gt;Core&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/gluonhq.com/post/3mcwe4ha3os2f" target="_blank" rel="noopener noreferrer"&gt;Gluon published quarterly releases&lt;/a&gt; of:&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://gluonhq.com/products/javafx/openjfx-25-release-notes/#25.0.2" target="_blank" rel="noopener noreferrer"&gt;JavaFX 25.0.2&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://gluonhq.com/products/javafx/openjfx-21-release-notes/#21.0.10" target="_blank" rel="noopener noreferrer"&gt;JavaFX 21.0.10&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://gluonhq.com/products/javafx/openjfx-17-release-notes/#17.0.18" target="_blank" rel="noopener noreferrer"&gt;JavaFX 17.0.18&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;Read more in this blog post: &amp;ldquo;&lt;a href="https://gluonhq.com/securing-the-future-of-openjfx-january-2026-critical-patch-update-released/" target="_blank" rel="noopener noreferrer"&gt;Securing the Future of OpenJFX: January 2026 Critical Patch Update Released&lt;/a&gt;&amp;rdquo;.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://mastodon.social/@johanvos/115932393975918195" target="_blank" rel="noopener noreferrer"&gt;Message by &lt;strong&gt;Johan Vos&lt;/strong&gt;&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Maintaining LTS versions for a project like JavaFX is complex and resource-intensive. It requires a fair amount of the Gluon resources, but it is extremely important to keep JavaFX secure, modern and relevant. You can support us at &lt;a href="https://gluonhq.com/lts" target="_blank" rel="noopener noreferrer"&gt;gluonhq.com/lts&lt;/a&gt;.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;The &lt;a href="https://docs.azul.com/core/release-notes" target="_blank" rel="noopener noreferrer"&gt;Azul release notes&lt;/a&gt; show the list of &lt;a href="https://docs.azul.com/core/release-notes#fixed-common-vulnerabilities-and-exposures" target="_blank" rel="noopener noreferrer"&gt;Fixed Common Vulnerabilities and Exposures&lt;/a&gt; in this release. There are 11 in total, of which 7 are related to JavaFX.&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/leewyatt.bsky.social/post/3mcz3c5qogk2w" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Lee Wyatt&lt;/strong&gt; has a proposal for a missing component in JavaFX&lt;/a&gt;: &amp;ldquo;&lt;em&gt;It is missing a native Switch control — every major UI framework has one except JavaFX. I&amp;rsquo;ve implemented a SwitchButton with full theme support. Hope to contribute to OpenJFX. &lt;a href="https://github.com/leewyatt/SwitchButtonShowcase" target="_blank" rel="noopener noreferrer"&gt;Check the README for details&lt;/a&gt; on why JavaFX needs this.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="applications"&gt;Applications&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://foojay.social/@jabref/115765522014656502" target="_blank" rel="noopener noreferrer"&gt;Message by JabRef&lt;/a&gt;: &amp;ldquo;_Thanks to the cool feature of #javafx called the &lt;code&gt;shortcut&lt;/code&gt; modifier, we can now display and handle the keyboard shortcuts in a more OS independent way. On Linux and Windows &lt;code&gt;cmd&lt;/code&gt; key will be replaced with &lt;code&gt;ctrl&lt;/code&gt; automatically and &lt;code&gt;option&lt;/code&gt; key with &lt;code&gt;MARKDOWN_HASH34823136d0dd91d0f5d22db740f7679cMARKDOWN&lt;/code&gt;&lt;em&gt;HASH&lt;/em&gt;. &lt;a href="https://builds.jabref.org/main/" target="_blank" rel="noopener noreferrer"&gt;Grab the latest version here&lt;/a&gt;.&amp;rdquo;&#10;&lt;ul&gt;&#10;&lt;li&gt;And a &lt;a href="https://blog.jabref.org/2025/12/26/JabRef6-0-alpha4/" target="_blank" rel="noopener noreferrer"&gt;blog post announcing an alpha release&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Happy Holidays from the JabRef Team! We have a present for you: We are happy to announce the release of JabRef 6.0 Alpha 4, the next step towards the stable version of JabRef 6.0. This alpha release brings a number of bug fixes, improvements, and new features, as well as some changes under the hood in the machine room of JabRef, to make future improvements easier and JabRef more versatile.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://github.com/rladstaetter/LogoRRR/releases" target="_blank" rel="noopener noreferrer"&gt;Release v25.2.0 of LogoRRR&lt;/a&gt; with several improvements and bump to Java(FX) 25.&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/mapton.org/post/3malzb6knvc2p" target="_blank" rel="noopener noreferrer"&gt;Message on Bluesky by mapton.org&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Hello, World! So, after more than three years this account is now back online posting about its development progress among other things. Mapton is powered by Java, JavaFX, and the Netbeans platform among other great open source projects.&lt;/em&gt; &amp;quot;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://github.com/trixon/mapton/releases/tag/v26.01" target="_blank" rel="noopener noreferrer"&gt;Mapton v26.01 is now available&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Let&amp;rsquo;s start this brand new year with a brand new version of Mapton.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/trixon.se/post/3mbmkkym63k2r" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Patrik Karlström&lt;/strong&gt; is having fun&lt;/a&gt;: &amp;ldquo;&lt;em&gt;As a weekend project I made an earthquake module for Mapton with data feed from usgs. The image shows recent quakes, but you can pretty much filter on any attribute. Colors indicates age in days, circle and lines the magnitude.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;A &lt;a href="https://www.reddit.com/r/JavaFX/comments/1q5m017/added_a_few_features_since_my_last_showcase_d/" target="_blank" rel="noopener noreferrer"&gt;video on Reddit of Mable&lt;/a&gt;, a cross-platform deadline management application, created by &lt;a href="https://github.com/n-xiao" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;@n-xiao&lt;/strong&gt;&lt;/a&gt;. Sources are &lt;a href="https://github.com/n-xiao/mable" target="_blank" rel="noopener noreferrer"&gt;available on GitHub&lt;/a&gt;. &amp;ldquo;&lt;em&gt;Mable is an application which allows you to create Countdowns — it counts down the days till a date you set. When a Countdown approaches or passes its due date, the built-in Heads Up Display will update, showing you how many Countdowns are either overdue, due today or due tomorrow. Mable is not intended to replace your Calendar or To-Do list. Instead, it provides you with a quick overview about how much time you have left for multiple deadlines.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/lidianycs.bsky.social" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Lidiany Cerqueira&lt;/strong&gt;&lt;/a&gt; built a tool to detect AI-generated fake references in academic papers. A &lt;a href="https://dev.to/lidianycs/how-i-built-a-tool-to-detect-ai-generated-fake-references-2891" target="_blank" rel="noopener noreferrer"&gt;long and detailed post is available on dev.to&lt;/a&gt;. &amp;ldquo;&lt;em&gt;Seeing the flawed metadata published in a journal was a wake-up call that led me to build CERCA, an open-source tool designed to assist researchers, reviewers, and editors in quickly verifying the accuracy of references. It was developed to improve trust, transparency, and reliability academic writing.&lt;/em&gt; &amp;quot;&#10;&lt;ul&gt;&#10;&lt;li&gt;She also &lt;a href="https://bsky.app/profile/lidianycs.bsky.social/post/3mdbwylfn5k27" target="_blank" rel="noopener noreferrer"&gt;announced CERCA v1.2.0-alpha&lt;/a&gt;: &amp;ldquo;&lt;em&gt;New feature: Manual Reference Entry. If it can&amp;rsquo;t read your PDF, paste your reference list. It&amp;rsquo;s now on &lt;a href="https://sourceforge.net/projects/cerca/" target="_blank" rel="noopener noreferrer"&gt;SourceForge&lt;/a&gt;!&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;And in &lt;a href="https://bsky.app/profile/lidianycs.bsky.social/post/3mdfr5scukk2u" target="_blank" rel="noopener noreferrer"&gt;another message from &lt;strong&gt;Lidiany&lt;/strong&gt; on Bluesky&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Started the day chatting with &lt;strong&gt;Frank Delporte&lt;/strong&gt; . We had a great time talking about Java, JavaFX, and CERCA. I highly recommend his &lt;a href="https://www.youtube.com/@FrankDelporte" target="_blank" rel="noopener noreferrer"&gt;YouTube channel&lt;/a&gt;, if you&amp;rsquo;re interested in Java.&lt;/em&gt;&amp;rdquo; The recording of that interview will soon be available on YouTube in the #JFXInAction series.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="games"&gt;Games&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/defold.com/post/3mczvnpdups2i" target="_blank" rel="noopener noreferrer"&gt;Defold Engine&lt;/a&gt; published their &lt;a href="https://www.youtube.com/watch?v=XCgJ3T-_1oE" target="_blank" rel="noopener noreferrer"&gt;Showreel 2025&lt;/a&gt;: &amp;ldquo;&lt;em&gt;We&amp;rsquo;ve gathered some of the best #MadeWithDefold games released over the past year in our traditional annual video.&lt;/em&gt; &amp;quot;&#10;&lt;ul&gt;&#10;&lt;li&gt;Defold is a completely free to use game engine for development of console, desktop, mobile and web games created with JavaFX. Check the &lt;a href="https://www.jfx-central.com/showcases/defold" target="_blank" rel="noopener noreferrer"&gt;showcase on JFX Central&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.jfx-central.com/videos/1JL6zdkM1GU" target="_blank" rel="noopener noreferrer"&gt;Here is an interview with Vlad Protsenko&lt;/a&gt;, one of the developers of Defold and the creator of &lt;a href="https://www.jfx-central.com/tools/cljfx" target="_blank" rel="noopener noreferrer"&gt;Cljfx, a declarative, functional and extensible wrapper of JavaFX for Clojure&lt;/a&gt;.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/markjkoch.bsky.social/post/3md5evj5yrc2z" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Mark J. Koch&lt;/strong&gt; shares a screenshot on Bluesky&lt;/a&gt;: &amp;ldquo;&lt;em&gt;I&amp;rsquo;ve made a lot of progress on my neuromancerpc restoration and it&amp;rsquo;s largely playable (let&amp;rsquo;s call it alpha), but I&amp;rsquo;m not done reverse engineering the original game&amp;rsquo;s data files&amp;hellip;&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="components-libraries-tools"&gt;Components, Libraries, Tools&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;A lot of library updates by &lt;strong&gt;Dirk Lemmermann&lt;/strong&gt; this month!&#10;&lt;ul&gt;&#10;&lt;li&gt;About FlexGanttFX: &amp;ldquo;&lt;em&gt;I finally managed to create a jdeploy installer for FlexGanttFX. You can find it on the updated &lt;a href="https://www.flexganttfx.com/" target="_blank" rel="noopener noreferrer"&gt;FlexGanttFX.com website&lt;/a&gt; under &amp;lsquo;Downloads/Demo&amp;rsquo;. The demo shows how this custom JavaFX component manages to draw thousands and thousands of activities below a timeline.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&amp;ldquo;&lt;em&gt;A new FlexGanttFX demo app installer is &lt;a href="https://www.jdeploy.com/~flexganttfxsampler" target="_blank" rel="noopener noreferrer"&gt;available online now&lt;/a&gt;&amp;hellip; These are basically interactive unit tests for various features available by this control. If you are doing planning and scheduling apps, this control is for you.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/dlemmermann.bsky.social/post/3mal46a7y522e" target="_blank" rel="noopener noreferrer"&gt;This screenshot of a FlexGanttFX demo&lt;/a&gt; shows how it can be used to visualise a project plan imported from MSProject.&lt;/li&gt;&#10;&lt;li&gt;About FxmlKit: it&amp;rsquo;s a modern JavaFX FXML framework with hot reload, zero-configuration loading, and optional dependency injection. &lt;a href="https://bsky.app/profile/leewyatt.bsky.social/post/3maoeqzsizs2h" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Lee Wyatt&lt;/strong&gt; shared a video on Bluesky&lt;/a&gt; and &lt;a href="https://www.youtube.com/watch?v=FwZNcqjZ1kY" target="_blank" rel="noopener noreferrer"&gt;on YouTube&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Implementing FXML and CSS hot reloading in FxmlKit. Edit, save, and see the results immediately. No more rebuild-restart loops!&lt;/em&gt; &amp;quot; And &lt;a href="https://bsky.app/profile/dlemmermann.bsky.social/post/3manngcfpf222" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Dirk Lemmermann&lt;/strong&gt; announced v1.5&lt;/a&gt;.&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/dlemmermann.bsky.social/post/3md46lrvfss2p" target="_blank" rel="noopener noreferrer"&gt;Release 3.4.2 of PDFViewFX is out now&lt;/a&gt;. &amp;ldquo;&lt;em&gt;The visual properties of the view can now be styled via CSS and not just via API.&lt;/em&gt; &amp;quot; &lt;a href="https://github.com/dlsc-software-consulting-gmbh/PDFViewFX" target="_blank" rel="noopener noreferrer"&gt;More info on GitHub&lt;/a&gt;.&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/dlemmermann.bsky.social/post/3md45wshhz22p" target="_blank" rel="noopener noreferrer"&gt;Release 3.8.3 of GemsFX is out&lt;/a&gt;. &amp;ldquo;&lt;em&gt;It contains a couple of bug fixes and new capabilities for the SessionManager (used to persist observable values into the preferences store).&lt;/em&gt; &amp;quot; &lt;a href="https://github.com/dlsc-software-consulting-gmbh/GemsFX" target="_blank" rel="noopener noreferrer"&gt;More info on GitHub&lt;/a&gt;.&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/dlemmermann.bsky.social/post/3mdfwzfcg6c2f" target="_blank" rel="noopener noreferrer"&gt;Release 1.3.0 of #KeyboardFX is out&lt;/a&gt;. &amp;ldquo;&lt;em&gt;This is a maintenance release used to replace javax.xml with jakarta.xml.&lt;/em&gt; &amp;quot; &lt;a href="https://github.com/dlsc-software-consulting-gmbh/KeyboardFX" target="_blank" rel="noopener noreferrer"&gt;More info on GitHub&lt;/a&gt;.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="podcasts-videos-books"&gt;Podcasts, Videos, Books&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Published on Foojay: &lt;a href="https://foojay.io/today/video-series-javafx-in-action-part-6/"&gt;Video series &amp;ldquo;JavaFX In Action&amp;rdquo;, Part 6&lt;/a&gt; with &lt;strong&gt;Vlad Protsenko&lt;/strong&gt; (Clojure), &lt;strong&gt;Matt Coley&lt;/strong&gt; (Recaf), &lt;strong&gt;Craig Raw&lt;/strong&gt; (Sparrow), and &lt;strong&gt;Florian Enner&lt;/strong&gt; (3D Robot Visualization).&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Helal Anwar&lt;/strong&gt; shared a new video: &lt;a href="https://www.youtube.com/watch?v=ADb44wswVs0" target="_blank" rel="noopener noreferrer"&gt;Devlog 4| Student management app (Part 4)&lt;/a&gt;.&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Frank Delporte&lt;/strong&gt; continues his #JavaOnSingleBoardComputers and &lt;a href="https://www.youtube.com/watch?v=X_t8DiUWBUo" target="_blank" rel="noopener noreferrer"&gt;published a video&lt;/a&gt; and &lt;a href="https://webtechie.be/post/2026-01-12-first-test-orangepi-java/" target="_blank" rel="noopener noreferrer"&gt;blog with more info&lt;/a&gt; showing Java and JavaFX on an OrangePi 5 Ultra with ARM processor. As expected, JavaFX doesn&amp;rsquo;t work on an OrangePi RV2 with RISC-V processor. Challenge for 2026: Who can build JavaFX on RISC-V?&lt;/li&gt;&#10;&lt;li&gt;A video by &lt;strong&gt;Binary Academy&lt;/strong&gt; : &lt;a href="https://www.youtube.com/watch?v=ISFUT9Aax8U" target="_blank" rel="noopener noreferrer"&gt;JavaFX 3D Solar System Full Animation Tutorial | Planets Orbiting Around the Sun&lt;/a&gt;.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="tutorials"&gt;Tutorials&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;strong&gt;Carl Dea&lt;/strong&gt; updated his blog series from 2022 on Foojay.io &lt;a href="https://foojay.social/@foojay/115818063541453234" target="_blank" rel="noopener noreferrer"&gt;&amp;ldquo;Project Panama for Newbies&amp;rdquo;&lt;/a&gt;. In &lt;a href="https://foojay.io/today/project-panama-for-newbies-part-4/"&gt;Part 4 you can read more&lt;/a&gt; about &amp;ldquo;&lt;em&gt;Imagine C code capable of performing a computation and after its completion the C code will notify Java code to perform updates to JavaFX UI components&amp;hellip;&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;Post by &lt;strong&gt;iifx.dev&lt;/strong&gt; : &lt;a href="https://iifx.dev/en/articles/460354306/from-modules-to-databases-solving-hibernate-visibility-issues-in-javafx-and-maven" target="_blank" rel="noopener noreferrer"&gt;From Modules to Databases: Solving Hibernate Visibility Issues in JavaFX and Maven&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Integrating Jakarta Persistence (JPA)—specifically Hibernate—into a modular (JPMS) JavaFX application can be a bit like solving a puzzle. Because the Java Module System is very strict about visibility, getting Hibernate to talk to your private entities requires a few specific &amp;lsquo;handshakes.&amp;rsquo; Here is a guide to getting this working smoothly.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;Video tutorial by &lt;strong&gt;Hacktrickz&lt;/strong&gt; : &amp;ldquo;&lt;a href="https://www.youtube.com/watch?v=CtKEM_giUIw" target="_blank" rel="noopener noreferrer"&gt;31.1: JavaFX Introduction, Setup &amp;amp; Application Structure| [Abdul Bari] Java course&lt;/a&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;Video tutorial by &lt;strong&gt;Kawsar Technologies&lt;/strong&gt; : &amp;ldquo;&lt;a href="https://www.youtube.com/watch?v=ghRx5TcR5W4" target="_blank" rel="noopener noreferrer"&gt;Part 13 | User Management System in JavaFX &amp;amp; MySQL | Fetch Assigned Roles &amp;amp; Display Them in Table&lt;/a&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="miscellaneous"&gt;Miscellaneous&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/dlemmermann.bsky.social/post/3mal5vjvgpk2n" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Dirk Lemmermann&lt;/strong&gt; on Bluesky&lt;/a&gt;: &amp;ldquo;&lt;em&gt;The online JavaFX &amp;lsquo;Ensemble&amp;rsquo; demos are pretty cool. Wished more library developers would leverage it. Check &lt;a href="https://www.jfx-ensemble.com" target="_blank" rel="noopener noreferrer"&gt;jfx-ensemble.com&lt;/a&gt;.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/mattcoley.bsky.social/post/3mbvlnisiys2z" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Matt Coley&lt;/strong&gt; is asking for feedback&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Any JavaFX people experience removed nodes being stuck around in memory after they&amp;rsquo;ve been removed from the scene graph? If I have a node that has a ~500 MB byte array, and then I remove it, I should be able to expect that to be freeable right?&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;Found &lt;a href="https://news.ycombinator.com/item?id=43860582" target="_blank" rel="noopener noreferrer"&gt;on Hacker News by &lt;strong&gt;ezst&lt;/strong&gt;&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Call me an idiot, but I still gladly take Swing and javafx over JS and monstrosities like react. The state of Qt is also very good. Web won because the distribution model is easier on the user, and because managers thought UX designers would be making whole apps now, saving on rates. Not because it&amp;rsquo;s technically superior.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;In March 2024, ArcGIS announced that they were deprecating ArcGIS Maps SDK for Java. In a new &lt;a href="https://www.esri.com/arcgis-blog/products/sdk-java/developers/using-arcgis-maps-sdk-for-qt-in-a-javafx-based-application" target="_blank" rel="noopener noreferrer"&gt;blog post by &lt;strong&gt;Lucas Danzinger&lt;/strong&gt;&lt;/a&gt; they explore a technique of using ArcGIS Maps SDK for Qt as a map control in a JavaFX based application: &amp;ldquo;&lt;em&gt;Through the above techniques, we&amp;rsquo;ve shown that it is possible to display a Qt MapView in Java, as well as to have two-way communication between Java and Qt via JNI. While this example is by no means a silver bullet, we hope that it might be an inspiration on how you can continue to move forward with your JavaFX apps using the latest ArcGIS technology.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;Interesting &lt;a href="https://github.com/webfx-project/webfx/discussions/59" target="_blank" rel="noopener noreferrer"&gt;discussion on GitHub&lt;/a&gt;: Can &lt;a href="https://cheerpj.com/" target="_blank" rel="noopener noreferrer"&gt;CheerpJ&lt;/a&gt; be integrated in &lt;a href="https://github.com/webfx-project/webfx" target="_blank" rel="noopener noreferrer"&gt;WebFX&lt;/a&gt;?&#10;&lt;ul&gt;&#10;&lt;li&gt;&amp;ldquo;&lt;em&gt;CheerpJ is a JVM and a distribution of OpenJDK for the browser in WebAssembly and JavaScript. Now supporting Java 8, Java 11 and Java 17 (preview), with Java 21+ coming in 2026.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&amp;ldquo;&lt;em&gt;WebFX is a JavaFX application transpiler powered by GWT. It can transpile a JavaFX application into a traditional self-contained pure JavaScript web app (with no plugin or server required for its execution in the browser).&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="jfx-central"&gt;JFX Central&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;New content on JFX Central:&#10;&lt;ul&gt;&#10;&lt;li&gt;Library: &lt;a href="https://www.jfx-central.com/libraries/fxmlkit" target="_blank" rel="noopener noreferrer"&gt;FxmlKit&lt;/a&gt;: &amp;ldquo;&lt;em&gt;A modern JavaFX FXML framework that eliminates boilerplate code, provides FXML/CSS hot reload, and optional progressive dependency injection support.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;Tools: &lt;a href="https://www.jfx-central.com/tools/fxtools" target="_blank" rel="noopener noreferrer"&gt;FXTools&lt;/a&gt; created by &lt;strong&gt;Lee Wyatt&lt;/strong&gt; : &amp;ldquo;&lt;em&gt;A practical desktop toolkit for JavaFX developers, providing image processing, color picking, SVG path extraction, font preview, and more.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;li&gt;The links of December got &lt;a href="https://foojay.io/today/javafx-links-of-december-2025/"&gt;published on Foojay&lt;/a&gt;.&lt;/li&gt;&#10;&lt;/ul&gt;</description></item><item><title>JavaFX Links of December 2025</title><link>https://foojay.io/today/javafx-links-of-december-2025/</link><pubDate>Wed, 31 Dec 2025 06:05:54 +0000</pubDate><guid>https://foojay.io/today/javafx-links-of-december-2025/</guid><description>&lt;p&gt;Here is the final JavaFX LinksOfTheMonth for 2025&amp;hellip; Thank you all for sharing your knowledge and experience with JavaFX. And we hope to see even more in the next year!&lt;/p&gt;&#10;&lt;p&gt;You can find the weekly lists on &lt;a href="https://www.jfx-central.com/links" target="_blank" rel="noopener noreferrer"&gt;jfx-central.com&lt;/a&gt;. Did we miss anything? Is there anything you want to have included in one of the next overviews? Let us know via &lt;a href="mailto:links@jfx-central.com"&gt;links@jfx-central.com&lt;/a&gt;.&lt;/p&gt;&#10;&lt;h2 id="core"&gt;Core&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=ra-VYA7gvBg" target="_blank" rel="noopener noreferrer"&gt;A one second, but still impressive, video on YouTube by Carl Dea&lt;/a&gt;: &amp;ldquo;&lt;em&gt;I was able to get 100,000-2M particles ~ 120fps using Apple&amp;rsquo;s Metal API on M4/GPU, using Java 25 FFM (project Panama), JavaFX WritableImage API. Of course there are more optimizations but really excited to be able to mix Java/JavaFX code with native bindings in a memory safe way. Still more to learn and do. There are different strategies to avoid data copies between CPU and GPU.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="applications"&gt;Applications&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;strong&gt;Juan Antonio Breña Moral&lt;/strong&gt; created an &amp;ldquo;animated spinning ripple surface rendered with JavaFX&amp;rdquo; using &lt;code&gt;MemorySegment&lt;/code&gt; from the FFM API (Java 22+), &lt;a href="https://openjdk.org/jeps/454" target="_blank" rel="noopener noreferrer"&gt;JEP 454&lt;/a&gt;, to increase performance. &lt;a href="https://github.com/jabrena/sombrero" target="_blank" rel="noopener noreferrer"&gt;Sources and screenshot on GitHub&lt;/a&gt;.&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://fosstodon.org/@trixon/115741355988091625" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Patrik Karlström&lt;/strong&gt; released CRIC 25.12&lt;/a&gt;: &amp;ldquo;&lt;em&gt;CRIC is a Java custom runtime image creator, a GUI for jlink. It&amp;rsquo;s built with JDK 25, JavaFX and the Netbeans platform. &lt;a href="https://github.com/trixon/cric/releases/tag/v25.12" target="_blank" rel="noopener noreferrer"&gt;Downloads available for Windows and Linux&lt;/a&gt;, including appimage and Snap.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="components-libraries-tools"&gt;Components, Libraries, Tools&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/dlemmermann.bsky.social/post/3m7asibknqc2u" target="_blank" rel="noopener noreferrer"&gt;Message by &lt;strong&gt;Dirk Lemmermann&lt;/strong&gt; on Bluesky&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Check out FXMLKit. Another convention-over-configuration framework that removes boilerplate code for loading screens done in FXML. It is inspired by afterburner.fx but also supports JPro multi-user sessions and dependency injection for nested components.&lt;/em&gt; &amp;quot; &lt;a href="https://github.com/dlsc-software-consulting-gmbh/FxmlKit" target="_blank" rel="noopener noreferrer"&gt;Sources and more description on GitHub&lt;/a&gt; and available from Maven Central.&#10;&lt;ul&gt;&#10;&lt;li&gt;Version 1.2.0: &amp;ldquo;&lt;em&gt;It now also supports hot reloading of FXML and CSS. Yes, that&amp;rsquo;s right &amp;hellip; see the changes you made to FXML without restarting your application.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/dlemmermann.bsky.social/post/3m7rvb7x5lk2z" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Dirk Lemmermann&lt;/strong&gt; announced v1.3.0 of FxmlKit&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Fixing an issue related to hot reloading of user agent stylesheets of custom controls. It had too many side-effects. It can still be enabled, but by default it is off.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="podcasts-videos-books"&gt;Podcasts, Videos, Books&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://webtechie.be/post/2025-12-04-jfxinaction-florian-enner-robot-3d-charts/" target="_blank" rel="noopener noreferrer"&gt;A new JFXInAction interview by &lt;strong&gt;Frank Delporte&lt;/strong&gt;&lt;/a&gt;: &amp;ldquo;&lt;em&gt;&lt;strong&gt;Florian Enner&lt;/strong&gt; impressed me at the Devoxx conference with his 3D visualizations and scientific charts with millions of points, showing real-time data received from robots and sensors. And using the same code, he does this in both desktop and mobile apps! Awe-inspiring work, making maximum use of the powers of hashtag#Java to combine network communication with a JavaFX user interface. And he also shows some amazing things with a JavaFX UI in a C++ application!&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Lazy Brownie&lt;/strong&gt; recorded the coding process of a &lt;a href="https://www.youtube.com/watch?v=veZXcM_Glfc&amp;amp;t=1886s" target="_blank" rel="noopener noreferrer"&gt;Two Player Pong&lt;/a&gt;. No shared code, no comments, just some relaxed music and a screen recording 🙂&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="tutorials"&gt;Tutorials&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;New tutorial videos this week by &lt;strong&gt;Troels Mortensen&lt;/strong&gt; :&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=_vEapBhebPs" target="_blank" rel="noopener noreferrer"&gt;The Controller Factory&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=gxKpus7t8w0" target="_blank" rel="noopener noreferrer"&gt;Changing views through events&lt;/a&gt;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="miscellaneous"&gt;Miscellaneous&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;A &lt;a href="https://bsky.app/profile/deadsuperhero.com/post/3m74qyncm7k2v" target="_blank" rel="noopener noreferrer"&gt;Bluesky thread by &lt;strong&gt;Sean Tilley&lt;/strong&gt;&lt;/a&gt;: &amp;ldquo;&lt;em&gt;For my capstone project in Computer Science, I&amp;rsquo;m writing a desktop music player in Java. I&amp;rsquo;ve never tried to build one before, but it seems like a decent challenge, and it covers the different data structures we&amp;rsquo;ve learned about. &amp;hellip; Playback will also be interesting to figure out. Java&amp;rsquo;s audio API doesn&amp;rsquo;t support MP3 out of the box, but JavaFX does.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;Similarly, &lt;a href="https://bsky.app/profile/kossayzemzem.bsky.social/post/3m6pcqfulrs2d" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Kz&lt;/strong&gt; needs to create a game&lt;/a&gt;: &amp;ldquo;&lt;em&gt;I am required to make a game in JavaFX for a University project and I have zero experience in video game dev.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;Repost of the &lt;a href="https://foojay.io/today/first-experiments-with-java-on-the-lattepanda-iota/"&gt;article by &lt;strong&gt;Frank Delporte&lt;/strong&gt; on Foojay&lt;/a&gt;: First Experiments with Java on the LattePanda IOTA: An Alternative to Raspberry Pi? &amp;ldquo;&lt;em&gt;Since I installed the Java version from Azul with JavaFX included, I could also run a JavaFX demo application. &amp;hellip; The application ran smoothly! It showed we&amp;rsquo;re running on a Linux 64-bit system with Java 25.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;The JavaFX plugin in IntelliJ IDEA is marked as &amp;lsquo;Ultimate Only&amp;rsquo; in the unified distribution IDEA 2025.3. But no panic, &lt;a href="https://youtrack.jetbrains.com/issue/IDEA-383652/JavaFX-plugin-is-marked-as-Ultimate-Only-in-IDEA-2025.3-Unified-Distribution" target="_blank" rel="noopener noreferrer"&gt;it&amp;rsquo;s a bug&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Until the fix is out, you can install the previous version 2025.2.6 of IntelliJ IDEA to bypass the issue.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;On Reddit, &lt;a href="https://www.reddit.com/r/JavaFX/comments/1pk0la8/fxgl_fps_problem/" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Rvaranda&lt;/strong&gt; shared a video and is asking for support&lt;/a&gt;: &amp;ldquo;&lt;em&gt;I&amp;rsquo;m having a weird problem with FXGL. Don&amp;rsquo;t know if it&amp;rsquo;s FPS related, but what happens is, when I start the game, the app&amp;rsquo;s timer spikes up very briefly at the start, then it stabilizes. As a result, all moving entities moves very quickly initialy, then they slow down to their actual speed.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/cdetastes.bsky.social/post/3ma7olcch2k2q" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Clément de Tastes&lt;/strong&gt; shared a screenshot&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Exploring Mandelbrot&amp;rsquo;s fascinating fractals has been a wonderful way for me to play with Java features. It started as a JavaFX project only, then became the perfect playground to experiment with upcoming features such as Valhalla Value Types and the Vector API. Special mention to FFM as well.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="jfx-central"&gt;JFX Central&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;New content on JFX Central:&#10;&lt;ul&gt;&#10;&lt;li&gt;People: &lt;a href="https://www.jfx-central.com/people/f.enner" target="_blank" rel="noopener noreferrer"&gt;Florian Enner&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;Video: &lt;a href="https://www.jfx-central.com/videos/_DGz4YyojpE" target="_blank" rel="noopener noreferrer"&gt;JavaFX In Action with Florian Enner about Robot 3D Visualizations and Charts&lt;/a&gt;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;li&gt;The links of November got &lt;a href="https://foojay.io/today/javafx-links-of-november-2025/"&gt;published on Foojay&lt;/a&gt;.&lt;/li&gt;&#10;&lt;/ul&gt;</description></item><item><title>Video series “JavaFX In Action”, Part 6 with Vlad Protsenko (Clojure), Matt Coley (Recaf), Craig Raw (Sparrow), and Florian Enner (3D Robot Visualization)</title><link>https://foojay.io/today/video-series-javafx-in-action-part-6/</link><pubDate>Fri, 26 Dec 2025 08:07:18 +0000</pubDate><guid>https://foojay.io/today/video-series-javafx-in-action-part-6/</guid><description>&lt;p&gt;This is the next part in the series of &amp;ldquo;JavaFX in Action&amp;rdquo; interviews. Are you working on a fantastic JavaFX application? Let me know, and let&amp;rsquo;s discuss it in the new year!&lt;/p&gt;&#10;&lt;ol&gt;&#10;&lt;li&gt;&lt;a href="https://foojay.io/today/new-video-series-javafx-in-action-part-1/"&gt;July &amp;lsquo;24: Pedro Duque Vieira, Daniel Zimmermann, Christopher Schnick, and Robert Ladstätter&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://foojay.io/today/video-series-javafx-in-action-part-2/"&gt;November &amp;lsquo;24: Maciej Gorywoda, Ramiro Domínguez Ayub, Christoph Schwentker, Ulas Ergin&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://foojay.io/today/video-series-javafx-in-action-part-3/"&gt;December &amp;lsquo;24: Özkan Pakdil, Clément de Tastes, Almas Baim, Steve Hannah, Jago de Vreede&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://foojay.io/today/video-series-javafx-in-action-part-4/"&gt;March &amp;lsquo;25: Mike Hearn, Sven Reimers, Chris Newland&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://foojay.io/today/video-series-javafx-in-action-part-5/"&gt;July &amp;lsquo;25: Cormac Redmond, Brian Schlining, Gerrit Grunwald, Dirk Lemmermann&lt;/a&gt;&lt;/li&gt;&#10;&lt;/ol&gt;&#10;&lt;h2 id="vlad-protsenko-combining-clojure-with-javafx-for-game-development-with-defold"&gt;Vlad Protsenko: Combining Clojure with JavaFX for Game Development with Defold&lt;/h2&gt;&#10;&lt;p&gt;&lt;a href="https://www.linkedin.com/in/vlad-protsenko-0999b2163/" target="_blank" rel="noopener noreferrer"&gt;Vlad Protsenko&lt;/a&gt; is a Senior Developer with proficiency in many JVM-based languages. He worked both in very small and large teams, gaining experience in developing projects of various sizes, from scratch and from legacy codebases. He enjoys full-stack development, writing backend, frontend, and Android applications. He started as a game developer and switched to developing enterprise software, currently mixing both at Defold.&lt;/p&gt;</description></item><item><title>First Experiments with Java on the LattePanda IOTA: An Alternative to Raspberry Pi?</title><link>https://foojay.io/today/first-experiments-with-java-on-the-lattepanda-iota/</link><pubDate>Thu, 11 Dec 2025 09:13:14 +0000</pubDate><guid>https://foojay.io/today/first-experiments-with-java-on-the-lattepanda-iota/</guid><description>&lt;p&gt;After years of experimenting with Raspberry Pi boards, Java, JavaFX, and &lt;a href="https://www.pi4j.com/" target="_blank" rel="noopener noreferrer"&gt;Pi4J&lt;/a&gt; to control electronics, I wanted to explore whether my knowledge and experience could be applied to similar boards from other providers. There are many alternatives available these days, based on ARM, Intel processors, and RISC-V architectures.&lt;/p&gt;&#10;&lt;p&gt;I reached out to several suppliers to see if I could get evaluation copies, and I&amp;rsquo;m happy to share that I received my first box from DFRobot containing the &lt;a href="https://www.dfrobot.com/product-2989.html" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;LattePanda IOTA&lt;/strong&gt;&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>JavaFX Links of November 2025</title><link>https://foojay.io/today/javafx-links-of-november-2025/</link><pubDate>Sun, 30 Nov 2025 06:42:41 +0000</pubDate><guid>https://foojay.io/today/javafx-links-of-november-2025/</guid><description>&lt;p&gt;Here is the overview of the JavaFX LinksOfTheMonth of November 2025. You can find the weekly lists on &lt;a href="https://www.jfx-central.com/links" target="_blank" rel="noopener noreferrer"&gt;jfx-central.com&lt;/a&gt;. Did we miss anything? Is there anything you want to have included in one of the next overviews? Let us know via &lt;a href="mailto:links@jfx-central.com"&gt;links@jfx-central.com&lt;/a&gt;.&lt;/p&gt;&#10;&lt;h2 id="core"&gt;Core&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://www.infoworld.com/article/4082709/will-javafx-return-to-java.html" target="_blank" rel="noopener noreferrer"&gt;Article by &lt;strong&gt;Paul Krill&lt;/strong&gt; on InfoWorld&lt;/a&gt;: &amp;ldquo;Will JavaFX return to Java?&amp;rdquo; &amp;ldquo;&lt;em&gt;Just as a proposal to return JavaFX to the Java Development Kit has drawn interest in the OpenJDK community, Oracle too says it wants to make the Java-based rich client application more approachable within the JDK. &amp;hellip; An &lt;a href="https://mail.openjdk.org/pipermail/discuss/2025-October/006553.html" target="_blank" rel="noopener noreferrer"&gt;October 29 post by &lt;strong&gt;Bruce Haddon&lt;/strong&gt; on an OpenJDK discussion list&lt;/a&gt; argues that the reasons for the separation &amp;hellip; are much less applicable today.&lt;/em&gt; &amp;quot;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;strong&gt;Frank Delporte&lt;/strong&gt; sees a perfect match with the Java on Mobile project and published a post about it: &lt;a href="https://webtechie.be/post/2025-11-05-openjfx-returning-to-openjdk/" target="_blank" rel="noopener noreferrer"&gt;Will OpenJFX Be Merged Into OpenJDK? It Would Be a Perfect Match with Java on Mobile!&lt;/a&gt; &amp;ldquo;&lt;em&gt;Again, some exciting developments seem to be happening in the Java world! There&amp;rsquo;s a growing discussion about bringing JavaFX back into the OpenJDK, and it couldn&amp;rsquo;t come at a better time, especially with Johan Vos and the team at Gluon working hard on making Java a first-class citizen on mobile platforms. &amp;hellip; I&amp;rsquo;m excited to see where this goes. Java has always been about &amp;lsquo;write once, run anywhere,&amp;rsquo; and these initiatives could finally deliver on that promise more completely than ever before.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;This post got also &lt;a href="https://foojay.io/today/will-openjfx-be-merged-into-openjdk-it-would-be-a-perfect-match-with-java-on-mobile/"&gt;republished on Foojay.io&lt;/a&gt;.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/johanvos.bsky.social/post/3m5jiv22b7s2u" target="_blank" rel="noopener noreferrer"&gt;Request by &lt;strong&gt;Johan Vos&lt;/strong&gt;&lt;/a&gt;: &amp;ldquo;&lt;em&gt;JavaFX developers using Windows: please help the development by doing some performance test for Direct3D 12.&lt;/em&gt; &amp;quot; More info in this &lt;a href="https://mail.openjdk.org/pipermail/openjfx-dev/2025-November/057510.html" target="_blank" rel="noopener noreferrer"&gt;mailinglist message by &lt;strong&gt;Lukasz Kostyra&lt;/strong&gt;&lt;/a&gt;.&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.infoq.com/news/2025/11/java-on-ios/" target="_blank" rel="noopener noreferrer"&gt;Article by &lt;strong&gt;Ben Evans&lt;/strong&gt; on InfoQ&lt;/a&gt;: &amp;ldquo;Running Java on iOS: Gluon Introduces OpenJDK Mobile Resources and Automated Build Pipelines&amp;rdquo;. &amp;ldquo;&lt;em&gt;The long-awaited Hotspot-on-iOS project is reporting major progress - OpenJDK is now able to build and run on iOS. This is the next milestone on a journey that started a long time ago - InfoQ first reported on it back in 2015. More recently, the mobile repository of OpenJDK (which is downstream of the main repo) has been able to build a static version of libjvm, allowing iOS binaries to execute Java code.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/did:plc:tysr26jaqf3moymuf7jc2uyr/post/3m5ymv2fcw22o" target="_blank" rel="noopener noreferrer"&gt;Message by &lt;strong&gt;Johan Vos&lt;/strong&gt;&lt;/a&gt; highlighting the fact JavaFX is a full open-source project: &amp;ldquo;&lt;em&gt;Keep in mind that the Gluon LTS releases of JavaFX 17u and JavaFX 21u are free to download and use. With Gluon, we do &lt;a href="https://gluonhq.com/services/javafx-support/#pricing" target="_blank" rel="noopener noreferrer"&gt;offer an LTS service&lt;/a&gt; but the releases themselves are really free. We don&amp;rsquo;t want to charge people for creating JavaFX applications. No reason to pay unless you need support.&lt;/em&gt; &amp;quot;&#10;&lt;ul&gt;&#10;&lt;li&gt;And he is &lt;a href="https://bsky.app/profile/johanvos.bsky.social/post/3m5yjlouems2o" target="_blank" rel="noopener noreferrer"&gt;looking for feedback about a core JavaFX feature&lt;/a&gt;: &amp;ldquo;&lt;em&gt;The JavaFX Properties/listeners approach is really powerful to bind UI components to changing values. But it is often over-used and the main source of performance issues. It&amp;rsquo;s very easy to kill performance by adding a listener to a property that is modified during layout.&lt;/em&gt;&amp;rdquo; What do you think? Did you experience such performance issues?&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="applications"&gt;Applications&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/abaddongtz.bsky.social/post/3m4rdpoes5s2a" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Rafael Gutierrez&lt;/strong&gt; shared on Bluesky&lt;/a&gt;: &amp;ldquo;A Pomodoro Timer built with JavaFX and Spring Shell using Hexagonal Architecture (any feedback is welcome.)_&amp;rdquo; You can find it &lt;a href="https://github.com/abadongutierrez/pomodoro-timer" target="_blank" rel="noopener noreferrer"&gt;on GitHub&lt;/a&gt;.&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Gerrit Grunwald&lt;/strong&gt; updated JDKMon to Java(FX) 25. &lt;a href="https://github.com/HanSolo/SpaceFX/releases" target="_blank" rel="noopener noreferrer"&gt;Downloads are available on GitHub&lt;/a&gt;. JDKMon is a little tool written in JavaFX that tries to detect all JDKs installed on your machine.&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/codedead.com/post/3m5oxetgrec2x" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;codedead&lt;/strong&gt; announced&lt;/a&gt; Opal v1.5.1. &lt;a href="https://codedead.com/blog/2025/11/15/opal-1.5.1/" target="_blank" rel="noopener noreferrer"&gt;Here are the release notes&lt;/a&gt;. &amp;ldquo;&lt;em&gt;Opal is a simple app that includes different sound groupings to suit anyone, from office to fantasy. All have volume controls so you can keep faint in the background or bring them forward. You can also set up a delay timer from the settings tab to remind you to take a break. You also have the option to combine multiple sounds at varying volumes to produce the perfect background noise.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://mastodon.social/@credmond/115617279097981595" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Cormac Redmond&lt;/strong&gt; shared an impressive screenshot&lt;/a&gt; showing a lot of different UI windows of KafkIO: &amp;ldquo;&lt;em&gt;Version 2.0.14 is released, packed with new features. &lt;a href="https://kafkio.com/" target="_blank" rel="noopener noreferrer"&gt;Download the fast, easy Apache Kafka™ GUI&lt;/a&gt;.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="games"&gt;Games&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;strong&gt;Gerrit Grunwald&lt;/strong&gt; updated SpaceFX to Java(FX) 25. &lt;a href="https://github.com/HanSolo/SpaceFX/releases" target="_blank" rel="noopener noreferrer"&gt;Downloads are available on GitHub&lt;/a&gt;. SpaceFX is a space shooter written in JavaFX. It can run on Mac, Windows, Linux, on mobile devices, and even in the browser. A true &amp;ldquo;write once run anywhere&amp;rdquo; application that illustrates the true power and the promise made by Java and JavaFX.&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/defold.com/post/3m6m2cbjfgk2f" target="_blank" rel="noopener noreferrer"&gt;Defold, the free game engine with a JavaFX UI engine, shared&lt;/a&gt;: &amp;ldquo;&lt;em&gt;&lt;a href="https://defold.com/manuals/editor/" target="_blank" rel="noopener noreferrer"&gt;The Defold Editor Overview manual&lt;/a&gt; has been updated! Get familiar with the new Editor features and let us know if there is anything we could improve further.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="components-libraries-tools"&gt;Components, Libraries, Tools&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://www.reddit.com/r/JavaFX/comments/1p178xg/webfx_now_supports_teavm_bringing_webassembly_and/" target="_blank" rel="noopener noreferrer"&gt;Message on Reddit JavaFX&lt;/a&gt; by &lt;strong&gt;Bruno Salmon&lt;/strong&gt; : &amp;ldquo;WebFX now supports TeaVM: bringing WebAssembly and Kotlin to JavaFX on the Web!&amp;rdquo; with a &lt;a href="https://blog.webfx.dev/2025/11/17/teavm/" target="_blank" rel="noopener noreferrer"&gt;link to a full blog post&lt;/a&gt;: &amp;ldquo;&lt;em&gt;We&amp;rsquo;re excited to announce that WebFX now officially supports TeaVM, a Java to WebAssembly compiler that unlocks faster startup times and broader JVM language compatibility with now Kotlin and Scala! We already have multiple live demos running with TeaVM.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="podcasts-videos-books"&gt;Podcasts, Videos, Books&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;strong&gt;Frank Delporte&lt;/strong&gt; interviewed &lt;strong&gt;Johan Vos&lt;/strong&gt; and &lt;strong&gt;Stephen Chin&lt;/strong&gt; at Devoxx Belgium 2025. The video is now available &lt;a href="https://www.youtube.com/watch?v=OrhGyTGJgOg" target="_blank" rel="noopener noreferrer"&gt;on YouTube&lt;/a&gt;. Johan is one of the lead OpenJFX developers and talks about the history of Java and JavaFX, and the future with the Java on Mobile project. Stephen is the author of &amp;ldquo;The Definitive Guide to Modern Java Clients with JavaFX.&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;New &lt;a href="https://www.youtube.com/watch?v=Mc3fUTxoKIg" target="_blank" rel="noopener noreferrer"&gt;&amp;ldquo;JavaFX In Action&amp;rdquo; interview published by &lt;strong&gt;Frank Delporte&lt;/strong&gt; with &lt;strong&gt;Craig Raw&lt;/strong&gt; about the Sparrow Bitcoin Wallet&lt;/a&gt;: &amp;ldquo;&lt;em&gt;I don&amp;rsquo;t have any bitcoin myself, but still find the idea of the blockchain and &amp;lsquo;public shared money&amp;rsquo; fascinating. And as it turns out, there is a free and open-source bitcoin wallet, Sparrow, created with JavaFX, that wants to help people understand how the Bitcoin system works and make transactions easy to understand. And while Craig explains the app itself, we also learn a lot about the Bitcoin ecosystem, reproducible builds, security, hardware wallets, and more!&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://foojay.io/today/foojay-podcast-83/"&gt;Foojay Podcast #83 with &lt;strong&gt;Johan Vos&lt;/strong&gt; and &lt;strong&gt;Stephen Chin&lt;/strong&gt;&lt;/a&gt;: OpenJDK Evolutions plus Tips and Tricks:&#10;&lt;ul&gt;&#10;&lt;li&gt;Johan takes us on a journey through Java&amp;rsquo;s history, from porting Java to Linux in 1995 to his current work on bringing Java and JavaFX to mobile and embedded devices through the Java On Mobile project.&lt;/li&gt;&#10;&lt;li&gt;Stephen is the author of &amp;ldquo;The Definitive Guide to Modern Java Clients with JavaFX,&amp;rdquo; who shares insights on building cross-platform client applications.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="tutorials"&gt;Tutorials&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;strong&gt;Troels Mortensen&lt;/strong&gt; is working on a series of YouTube tutorials:&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=LsxLAjTXROw" target="_blank" rel="noopener noreferrer"&gt;Your first app&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=_jEooKZFWkI" target="_blank" rel="noopener noreferrer"&gt;Your first button&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=pv4pZx7ewww" target="_blank" rel="noopener noreferrer"&gt;Your first TextField&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=tjq0XfaY6Zg" target="_blank" rel="noopener noreferrer"&gt;Simple app structure&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=j02aTD7AMkA" target="_blank" rel="noopener noreferrer"&gt;Introducing the SceneBuilder&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=iTMEyaQJxjo" target="_blank" rel="noopener noreferrer"&gt;Designing in the SceneBuilder&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=JkONOwnDTDs" target="_blank" rel="noopener noreferrer"&gt;Opening the SceneBuilder through IntelliJ&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=8OO5-p2mBjs" target="_blank" rel="noopener noreferrer"&gt;Your first controller&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=peZT8Fv6MzE&amp;amp;t=1s" target="_blank" rel="noopener noreferrer"&gt;Introducing the View Manager&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=jSXD3-rg8P0" target="_blank" rel="noopener noreferrer"&gt;Passing data between views&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=ylkQyqZxiIg" target="_blank" rel="noopener noreferrer"&gt;ViewManager v3&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=KVD12NS8VQg" target="_blank" rel="noopener noreferrer"&gt;Putting fxml files into resource directory&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=8eIY_xsRm2A" target="_blank" rel="noopener noreferrer"&gt;Single view application&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=AUNqzm4AJxo" target="_blank" rel="noopener noreferrer"&gt;The Controller Configurator&lt;/a&gt;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=8gvLIt5zSxg" target="_blank" rel="noopener noreferrer"&gt;By &lt;strong&gt;Sour coders&lt;/strong&gt;&lt;/a&gt;: JavaFX install and setup in IntelliJ (Local JavaFX template) with Scene Builder setup.&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=rLSiLMbpdUY" target="_blank" rel="noopener noreferrer"&gt;By &lt;strong&gt;Programming of Life&lt;/strong&gt;&lt;/a&gt;: Mini JavaFX Particles Animation Tutorial | Beautiful FX Effect in Under 100 Lines&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="miscellaneous"&gt;Miscellaneous&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/hansolo.eu/post/3m5fzwwhuoc2l" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Gerrit Grunwald&lt;/strong&gt; has fans! 😉&lt;/a&gt;: &amp;ldquo;&lt;em&gt;Yesterday at the event of the Amsterdam JUG, someone from the audience came to me after my session and thanked me for creating the JavaFX libraries I did create&amp;hellip; It always makes me really happy to see people use the things that I just created for the fun of it. Love the Java Community.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;Interesting read: &lt;a href="https://iifx.dev/en/articles/457273426/solving-the-java-24-javafx-24-compatibility-issue-unsafe-access-flag" target="_blank" rel="noopener noreferrer"&gt;Solving the Java 24/JavaFX 24 Compatibility Issue: Unsafe Access Flag&lt;/a&gt;. &amp;ldquo;&lt;em&gt;The warnings you&amp;rsquo;re seeing, especially those related to sun.misc.Unsafe and WARNING: package sun.misc not in java.base, are a direct result of JEP 471 and JEP 498 in the newer Java versions (starting around JDK 23/24). &amp;hellip; Future JavaFX Versions (JavaFX 25 and beyond) are expected to have this internal usage removed or replaced with modern alternatives (like the Foreign Function &amp;amp; Memory API introduced in Java). Until then, using the &amp;ndash;sun-misc-unsafe-memory-access=allow flag is the correct way to handle this transition period. You should keep an eye on the JavaFX release notes for updates on when this internal dependency is completely phased out!&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://bsky.app/profile/markjkoch.bsky.social/post/3m5yyiqgmxk2y" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Mark J. Koch&lt;/strong&gt; needs a JavaFX-break&lt;/a&gt;: &amp;ldquo;&lt;em&gt;My end of the year goal is to make this pile of circuits into a working analog synth. Then, and only then, am I allowed to go back to gamedev on my JavaFX Neuromancer PC remake while sipping egg nog. Too many hobbies.&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.reddit.com/r/JavaFX/comments/1p6ek5p/new_color_picker_idea/" target="_blank" rel="noopener noreferrer"&gt;Screenshot by &lt;strong&gt;jaavaaguru&lt;/strong&gt; on Reddit&lt;/a&gt;: &amp;ldquo;&lt;em&gt;I&amp;rsquo;m working on a theme designer app, and came up with this color picker idea this morning and implemented it from scratch. Any thoughts for improvements?&lt;/em&gt;&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://foojay.social/@frankdelporte/115612004093020148" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Frank Delporte&lt;/strong&gt; introduced the new hashtag #JavaOnSingleBoardComputers&lt;/a&gt;. &amp;ldquo;&lt;em&gt;Thanks to DFRobot, I took my first step toward testing other single-board computers with Java, JavaFX, and Pi4J. The LattePanda IOTA looks like a great board and calls for more experiments after a quick first test&amp;hellip;&lt;/em&gt; &amp;quot; &lt;a href="https://webtechie.be/post/2025-11-25-first-test-lattepanda-iota-with-ubuntu-and-java/" target="_blank" rel="noopener noreferrer"&gt;Video and blog are available here&lt;/a&gt; and show a JavaFX JBang application running smoothly on the IOTA.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="jfx-central"&gt;JFX Central&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;New content on JFX Central:&#10;&lt;ul&gt;&#10;&lt;li&gt;Tools: &lt;a href="https://www.jfx-central.com/tools/sdkman-gui" target="_blank" rel="noopener noreferrer"&gt;SDKMAN GUI&lt;/a&gt;, a modern graphical management tool for SDKMAN, providing an Applite-like user experience.&lt;/li&gt;&#10;&lt;li&gt;Showcase: &lt;a href="https://www.jfx-central.com/real_world/sparrow" target="_blank" rel="noopener noreferrer"&gt;Sparrow Bitcoin Wallet&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;People: &lt;a href="https://www.jfx-central.com/people/c.raw" target="_blank" rel="noopener noreferrer"&gt;Craig Raw&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;Video: &lt;a href="https://www.jfx-central.com/videos/Mc3fUTxoKIg" target="_blank" rel="noopener noreferrer"&gt;JavaFX In Action with Craig Raw about the Sparrow Bitcoin Wallet&lt;/a&gt;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;li&gt;The links of October got &lt;a href="https://foojay.io/today/javafx-links-of-october-2025/"&gt;published on Foojay&lt;/a&gt;.&lt;/li&gt;&#10;&lt;/ul&gt;</description></item><item><title>Will OpenJFX Be Merged Into OpenJDK? It Would Be a Perfect Match with Java on Mobile!</title><link>https://foojay.io/today/will-openjfx-be-merged-into-openjdk-it-would-be-a-perfect-match-with-java-on-mobile/</link><pubDate>Wed, 26 Nov 2025 09:18:36 +0000</pubDate><guid>https://foojay.io/today/will-openjfx-be-merged-into-openjdk-it-would-be-a-perfect-match-with-java-on-mobile/</guid><description>&lt;p&gt;While looking for articles for the &lt;a href="https://www.jfx-central.com/links" target="_blank" rel="noopener noreferrer"&gt;JFX Central Links Of The Week&lt;/a&gt;, I found this very interesting &lt;a href="https://www.infoworld.com/article/4082709/will-javafx-return-to-java.html" target="_blank" rel="noopener noreferrer"&gt;article by &lt;strong&gt;Paul Krill&lt;/strong&gt; on InfoWorld&lt;/a&gt;. It&amp;rsquo;s based on an &lt;a href="https://mail.openjdk.org/pipermail/discuss/2025-October/006553.html" target="_blank" rel="noopener noreferrer"&gt;October 29 post by &lt;strong&gt;Bruce Haddon&lt;/strong&gt; on an OpenJDK discussion list&lt;/a&gt; in which he argues that the reasons for the separation of OpenJFX from OpenJDK in Java 11, more than seven years ago, are much less applicable today.&lt;/p&gt;&#10;&lt;p&gt;Again, some exciting developments seem to be happening in the Java world! There&amp;rsquo;s a growing discussion about bringing JavaFX back into the OpenJDK, and it couldn&amp;rsquo;t come at a better time, especially with Johan Vos and the team at Gluon working hard on making Java a first-class citizen on mobile platforms.&lt;/p&gt;</description></item><item><title>Foojay Podcast 83: OpenJDK Evolutions plus Tips and Tricks</title><link>https://foojay.io/today/foojay-podcast-83/</link><pubDate>Mon, 24 Nov 2025 06:07:00 +0000</pubDate><guid>https://foojay.io/today/foojay-podcast-83/</guid><description>&lt;p&gt;Welcome to another episode of the Foojay Podcast! Just like in the previous episode, I bring you conversations from two of Europe&amp;rsquo;s premier Java conferences - Devoxx in Belgium and JFall in the Netherlands.&lt;/p&gt;&#10;&lt;p&gt;At these conferences, I had the opportunity to speak with members of the Java community about topics ranging from the evolution of Java itself to mobile development, performance optimization, and even automotive security.&lt;/p&gt;&#10;&lt;p&gt;My first guest is Johan Vos, a Java Champion who takes us on a journey through Java&amp;rsquo;s history - from porting Java to Linux in 1995 to his current work on bringing Java and JavaFX to mobile and embedded devices through the Java On Mobile project.&lt;/p&gt;</description></item></channel></rss>