Awesome
Awesome JavaFX
A curated list of awesome JavaFX frameworks, libraries, books etc... .
Contents
- Libraries, Tools and Projects
- Frameworks
- Books
- Blogs and Sites
- People
- Tutorials
- Talks
- Slides
- Articles
- Real World Examples
Libraries, Tools and Projects
- Actlist - Actlist is a utility platform to execute your own action list easily and simply.
- Advanced-Bindings for JavaFX (8) - advanced-bindings is a collection of useful helpers and custom binding implementations like java.lang.Math or Switch-Case as JavaFX binding.
- AnchorFX - Docking framework for JavaFX platform.
- Animated - Implicit animations for JavaFX, inspired by Flutter.
- AnimateFX - A JavaFX library containing ready-to-use animations.
- assertj-javafx - AssertJ assertions for JavaFX Properties and Bindings.
- BootstrapFX - BootstrapFX is a partial port of Twitter Bootstrap for JavaFX.
- CalendarFX - CalendarFX is a calendar framework for JavaFX 8. It contains a set of professional custom controls, which can be used to implement a calendar UI for any kind of application.
- ChartFx - ChartFx is a scientific charting library developed at GSI for [FAIR] (https://www.gsi.de/en/researchaccelerators/fair.htm) with focus on performance optimised real-time data visualisation for data sets with up to millions of data point.
- CssFX - Enhances developer productivity by providing JavaFX CSS reloading functionnality in a running application. Usable as standalone library or integrated in Scenic View.
- Component-Inspector - A tool to help you inspect the location and properties of certain components in a window hierarchy.
- ControlsFX - ControlsFX is an open source project for JavaFX that aims to provide really high quality UI controls and other tools to complement the core JavaFX distribution.
- CustomStage - CustomStage is a fully customizable Undecorated JavaFX stage (window) with amazing features.
- DesktopPaneFX - MDI components for JavaFX. Think JDesktopPane/JInternalFrame for JavaFX.
- e(fx)clipse - JavaFX Tooling and Runtime for Eclipse and OSGi.
- Figures - Figures is a free, simple-to-use, flexible money management application. It is light-weight and fast, and stores your data in a SQLite database, which can be optionally encrypted. You can import and export your data in OFX or QIF formats.
- FlexBoxFX - FlexBoxFX is a JavaFX implementation of CSS3 flexbox layout manager.
- FlexGanttFX - FlexGanttFX is the most advanced JavaFX-based Gantt charting framework currently available for Java.
- Flowless - Efficient VirtualFlow for JavaFX.
- FontAwesomeFX - FontAwesome in JavaFX with FontAwesomeFX.
- FormsFX - A framework for easily creating forms for a JavaFX UI.
- FroXty - iOS frosty/translucent effect to JavaFX.
- FX-BorderlessScene - Undecorated JavaFX Scene with implemented move, resize, minimise, maximise, close and Windows Aero Snap controls.
- FXFileChooser - provides an alternative file chooser especially suitable for extreme large directories where an integrated live search and filtering can be helpful.
- FXForm2 - A library providing automatic JavaFX form generation. The generated form is highly configurable and skinnable using code, annotations and CSS styling. FXForm2 is compatible with the JSR 303 for bean validation.
- FXGraphics2D - A library that provides a Graphics2D API for drawing on the JavaFX Canvas so that existing Java2D code can be reused easily. This library was created to provide JavaFX support for JFreeChart.
- FXLauncher - Auto updating launcher for JavaFX Applications. Combined with JavaFX native packaging, you get a native installer with automatic app updates.
- FXParallax - Parallax framework for Java (JavaFX).
- FXRibbon - Microsoft like Ribbon control for Java (JavaFX).
- FXTaskbarProgressBar - A library for showing progress on the Windows taskbar.
- FXTrayIcon - System TrayIcon implementation for JavaFX that allows developers to use native JavaFX MenuItems and not have to worry with AWT or Swing.
- FXValidation - Validation support for Java (JavaFX).
- FXyz - F(X)yz is a new JavaFX 3D library that provides additional primitives, composite objects, controls and data visualizations that the base JavaFX 8 3D packages do not have.
- GemsFX - A small library with useful controls: an on-screen keyboard, a PDF viewer control, and some more.
- GestureFX - A lightweight pinch-to-zoom pane for JavaFX.
- Getdown - Getdown is a system for deploying Java applications to end-user computers, as well as keeping those applications up to date.
- Gluon Maps - Gluon Maps is built with high performance in mind, but that doesn’t mean functionality is missing. Gluon Maps offers layer overlays, multiple tilesets, and much more.
- Gluon Scene Builder - Scene Builder works with the JavaFX ecosystem – official controls, community projects, and Gluon offerings including Gluon Mobile, Gluon Desktop, and Gluon CloudLink.
- GMapFX - GMapsFX provides a wrapper to the Google Map's Javascript API, allowing you to use and interact with maps using a pure Java API.
- graph editor - A library for creating and editing graph-like diagrams in JavaFX.
- Grid - A Component for grid based games like sudoku or chess.
- Ikonli - Ikonli provides icon packs that can be used in Java applications. Currently Swing and JavaFX UI toolkits are supported.
- JavaFX Dashboard - Customizable JavaFX Dashboard with theme changer, dark/light modes, and table builder for a user-friendly interface.
- JavaFX DataViewer - JavaFX Charts library. Create Charts in JavaFX using the plotly.js library.
- javafx-d3 - javafx-d3 provides a Java API for using the JavaScript library d3.js with JavaFx Applications.
- JavaFXPorts - JavaFXPorts is the open source project that brings Java and JavaFX to mobile and embedded hardware, including iPhone, iPad, Android devices, and the Raspberry Pi.
- JCSG - Java implementation of BSP based CSG (Constructive Solid Geometry).
- JFoenix - JavaFX Material Design Library. JFoenix is an open source Java library, that implements Google Material Design using Java components.
- JFXAnimation - Builder for CSS keyframe animations in JavaFX. Create animations like you would do with CSS.
- JFXNodeMapper - Javafx Node mapping to various data formats like csv,xml,json and resultset.
- JFXScad - JavaFX 3D Printing IDE based on JCSG.
- JFXtras - A supporting library for JavaFX, containing helper classes, extended layouts, controls and other interesting widgets.
- JideFX- JideFX Common Layer is a collection of various extensions and utilities for to JavaFX platform. The JideFX Common Layer is the equivalent to the JIDE Common Layer in the JIDE components for Swing.
- JMetro - Modern theme (or look and feel) for JavaFX inspired by Microsoft Metro / Fluent Design System. It is used for instance in NASA's app: Deep Space Trajectory Explorer.
- jpro - JavaFX for the Browser. jpro is a new technology which brings Java back into the browser - without Java Plugin.
- JSilhouette - JSilhouette provides additional shapes for Java applications.
- Kubed - A port of the popular Javascript library D3.js to Kotlin/JavaFX.
- Lib-Tile - Lib-Tile is a multi Maven project written in JavaFX and NetBeans IDE 8.0.2 and provides the functionalities to use and handle easily Tiles in your JavaFX application.
- LiveDirsFX - Directory tree model for JavaFX that watches the filesystem for changes.
- MaterialFX - A new well documented and actively developed library which brings material design components to JavaFX and much more.
- Maven jpackage Template - GitHub template. Use Maven, jlink and jpackage to produce JavaFX macOS, Windows and Linux installers via GitHub Actions.
- Medusa - A JavaFX library for Gauges. The main focus of this project is to provide Gauges that can be configured in multiple ways.
- MigPane - MigLayout can produce flowing, grid based, absolute (with links), grouped and docking layouts.
- NetBeansIDE-AfterburnerFX-Plugin - The NetBeansIDE-AfterburnerFX-Plugin is a NetBeans IDE plugin which supports the file generation in convention with the library afterburner.fx in a JavaFX project.
- Orson Charts - An interactive 3D chart library for JavaFX and Swing.
- PI-Rail-FX - A UI for a model railway control system.
- PreferencesFX - A library to easily create a UI for application settings / preferences.
- Quarkus-fx - An extension to run JavaFX in a Quarkus application.
- QuPath - Open source software for bioimage analysis.
- ReactorFX - ReactorFX integrates Project Reactor and JavaFX by providing a simple API to create reactive Flux from JavaFX Controls, Dialogs, Observables, and Collections.
- ReactFX - Reactive event streams, observable values and more for JavaFX.
- redux-javafx-devtool - A developer-tool for ReduxFX. Visualizes the state and actions of the app. Enables time-traveling.
- Resize Me - An app to resize and compress images.
- RichTextArea - Rich text area with support for emojis, images, tables, hyperlinks and much more.
- RichTextFX - Rich-text area for JavaFX.
- RxJavaFX: JavaFX bindings for RxJava - RxJavaFX is a simple API to convert JavaFX events into RxJava Observables and vice versa. It also has a scheduler to safely move emissions to the JavaFX Event Dispatch Thread.
- Scenic View - Scenic View is a JavaFX application designed to make it simple to understand the current state of your application scenegraph, and to also easily manipulate properties of the scenegraph without having to keep editing your code. This lets you find bugs, and get things pixel perfect without having to do the compile-check-compile dance.
- SmartCSVFX - A simple JavaFX application to load, save and edit a CSV file and provide a JSON configuration for columns to check the values in the columns.
- Stream-Pi - A modular, free, Open Source, Cross-platform macro pad software.
- SynchronizeFX - Remote Data-Binding between different JVMs, both on a local machine and over the network.
- SyntheticaFX - SyntheticaFX provides themes and components mainly made for professional business applications on the desktop. The library is growing, new controls are under construction and will be added in future releases. The target platform of the final release is Java 9 or above.
- TestFX - Simple and clean testing for JavaFX.
- TestFX-dsl - Java friendly DSL for defining TestFX tests.
- TilesFX - A JavaFX library containing tiles for Dashboards.
- TiwulFX provides UI components: advanced TableView with various ready to use columns (TextColumn, NumberColumn, LookupColumn etc), DetachableTabPane that can be used as docking framework, MessageDialog, SideMenu etc.
- TuioFX - Toolkit for developing multi-touch, multi-user interactive tabletops and surfaces.
- Toggle Switch - Toggle Switch control for Java (JavaFX).
- Undecorator - Decorate undecorated JavaFX stages with custom skin. This helper brings a custom look to your JavaFX stages.
- UndoFX - Undo manager for JavaFX.
- Update4j - Auto-updater and launcher for your distributed applications. Built with Java 9's module system in mind.
- ValidatorFX - A validation library for JavaFX.
- VWorkflows - Interactive flow/graph visualization for building domain specific visual programming environments. Provides UI bindings for JavaFX.
- WebFX - A JavaFX application transpiler. Write your Web Application in JavaFX and WebFX will transpile it in pure JS.
- Webview Debugger - JavaFx WebView debugging with Chrome Dev tools.
- Welk Lidwoord - An app that will help you to improve your Dutch grammar.
- WellBehavedFX - Composable event handlers and skin scaffolding for JavaFX controls.
- Wordagam - A fun little word game built with openjfx.
Frameworks
- afterburner.fx - afterburner.fx is a minimalistic (3 classes) JavaFX MVP framework based on Convention over Configuration and Dependency Injection.
- APX - A JavaFX Library for Creating and Implementing MVC Type applications.
- Basilisk - Desktop/Mobile JavaFX application framework. Apache License V2
- cljfx - Lightweight JavaFX Framework for Clojure
- DataFX - DataFX is a JavaFX frameworks that provides additional features to create MVC based applications in JavaFX by providing routing and a context for CDI.
- Dolphin Platform - Dolphin Platform is a client / server frameworks that provides a async communication between a server and a client based on the remote presentation model pattern.
- EasyBind - EasyBind leverages lambdas to reduce boilerplate when creating custom bindings.
- EasyFXML - EasyFXML is a fully-featured opinionated JavaFX framework based on Vavr and Spring Boot which manages most of the annoying boilerplate that comes with JavaFX. Apache License V2.
- FXGL - JavaFX Game Development Framework.
- Griffon - Next generation desktop application development platform for the JVM. Apache License V2.
- JacpFX - An UI application framework based on JavaFX.
- JRebirth - JRebirth JavaFX Application Framework provides a really simple way to write sophisticated and powerful RIA and Desktop applications.
- mvvmFX - mvvm(fx) is an application framework which provides you necessary components to implement the MVVM pattern with JavaFX. Apache License V2.
- Open Lowcode - A low-code framework for enterprise software with a JavaFX thin client.
- SpringBoot-JavaFX-Support - Dependency Injection Support for JavaFX with Spring.
- ReactiveDeskFX - JavaFX micro-framework to develop JavaFX components very fast with minimal code following MVVM architecture pattern with passive view.
- ReduxFX - Functional Reactive Programming (FRP) for JavaFX inspired by the JavaScript library Redux.js.
- ScalaFX - simplifies creation of JavaFX-based user interfaces in Scala.
- TornadoFX - Lightweight JavaFX Framework for Kotlin.
- WorkbenchFX - A lightweight RCP framework for JavaFX applications.
Books
- Getting started with Java on the Raspberry Pi - By Frank Delporte<br/> Get started with the latest versions of Java, JavaFX, Pi4J, Spring and so much more. Learn the power (and fun!) of experimenting with electronics. All explained in many small and easy to understand examples.
- Introducing JavaFX 8 Programming - By Herbert Schildt<br/> Introducing JavaFX 8 Programming provides a fast-paced, practical introduction to JavaFX, Java's next-generation GUI programming framework. In this easy-to-read guide, best-selling author Herb Schildt presents the key topics and concepts you'll need to start developing modern, dynamic JavaFX GUI applications.
- JavaFX 9 by Example - by Carl Dea , Mark Heckler , Gerrit Grunwald , José Pereda , Sean Phillips<br/> JavaFX 9 by Example is chock-full of engaging, fun-to-work examples that bring you up to speed on the major facets of JavaFX 9.
- JavaFX Essentials - By Mohamed Taman<br/> Create amazing Java GUI applications with this hands-on, fast-paced guide
- Learn JavaFX 8 Building User Experience and Interfaces with Java 8 - by Kishori Sharan<br/> Start developing rich-client desktop applications using your Java skills. Learn MVC patterns, FXML, effects, transformations, charts, images, canvas, audio and video, DnD, and more. After reading and using Learn JavaFX 8, you'll come away with a comprehensive introduction to the JavaFX APIs as found in the new Java 8 platform.
- Mastering JavaFX 8 Controls - By Hendrik Ebbers<br/> Deliver state-of-the-art applications with visually stunning UIs. Mastering JavaFX 8 Controls provides clear instructions, detailed examples, and ready-to-use code samples. Find out how to work with the latest JavaFX APIs, configure UI components, automatically generate FXML, build cutting-edge controls, and effectively apply CSS styling. Troubleshooting, tuning, and deployment are also covered in this Oracle Press guide.
- Pro Java 9 Games Development Leveraging the JavaFX APIs - By Wallace Jackson<br/> Use Java 9 and JavaFX 9 to write 3D games for the latest consumer electronics devices.
- Pro JavaFX 9 A Definitive Guide to Building Desktop, Mobile, and Embedded Java Clients - By Johan Vos , Weiqi Gao , James Weaver , Stephen Chin , Dean Iverson<br/> The expert authors cover the new more modular JavaFX 9 APIs, development tools, and best practices and provide code examples that explore the exciting new features provided with JavaFX 9, part of Oracle's new Java 9 release.
Blogs and Sites
- falkhausen.de - Class diagrams for JavaFX by Markus Falkhausen.
- FX Experience - FX Experience has been the premiere site for JavaFX code, posts, and insights since mid-2009, and readership continues to grow every month. You should absolutly follow their weekly links.
- FXAPss - A JavaFX blog.
- GUI Garage - Open source UI stuff!
- Harmonic Code - You should see how he's playing with JavaFX! by Gerrit Grunwald.
- JavaFX Daily - JavaFX Daily Photos, Article and Links by Michael Heinrichs.
- JavaFX Delight - Jens Deters blog about Java/JavaFX.
- JFX Central - Home to anything JavaFX related. A website, desktop app and mobile app fully generated with JavaFX providing a lot of information about JavaFX. Sources and data are opensource GitHub projects.
- JPereda's Coding Blog - Outstanding Java/JavaFX Articles by José Pereda.
- Kware - A blog about JavaFX by Christoph Keimel.
- Pixel Duke - Several articles on JavaFX from someone who has worked with JavaFX since its first beta release, for example, he was the author of a component that allowed Swing and JavaFX interoperability in the first versions of JavaFX when that was still not possible. The blog owner is a JavaFX and Swing Freelancer and Consultant or more generally a Front End Freelancer and Consultant who's also a Software Designer.
- Pixel Perfect - You can find good articles about java and specially JavaFX by Dirk Lemmermann.
People
These people share good stuff on their Twitter/X, Mastodon, Bluesky,... accounts. Some of them are Legends, Champions and Rockstars. Follow them!
- Andres Almiray - JSR377 Spec lead, Groovy aficionado, Griffon project lead, Basilisk project lead, Java Champion http://manning.com/almiray.
- Alessio Vinerbi - Java and JavaFX Senior software engineer.
- Alexander Casall - interested in JavaFX, iOS, Angular2 development and product ownership.
- Andreas Billmann - Java and JavaFX developer.
- Arnaud Nouard - Play JavaFX, Drums, Keyboard (those with black and white keys!) and with my Kids.
- Bernard Traversat - Java Language, JVM, JavaScript, JDK, JavaFX, Swing/AWT - Sr. Eng Director, Java Platform Group, Oracle.
- Bertrand Goetzmann - Java EE architect, fan of Groovy/Grails (trainer), JavaFX, Drupal and Ionic... .
- Bruno Borges - Java Champion, Principal Product Manager for Java at Mirosoft.
- Carl Dea - Book Author, Blogger, a wannabe GUI guy, JavaFX enthusiast, mobile phones, AI.( He is a Legend!)
- Christian Campo - Committer in multiple Eclipse projects, interested in JavaFX and Cloud Storage.
- Danno Ferrin - Java, JavaFX, Gradle, Groovy, Co-founded Griffon.
- David Grieve - Member of the JavaFX development team at Oracle. Primarily responsible for JavaFX's CSS implementation.
- Dean Iverson - JavaFX Author.
- Delorme Loïc - Junior Java SE/EE developer, UI and mobile application lover (JavaFX, #GluonHQ).
- Dirk Lemmermann - Senior Java SE / EE software engineer. UI Lover (Swing, JavaFX).
- Felix - Software Developer in Android,Java,JavaFx, Opendata junkie & IOT(Raspberry Pi).
- Frank Delporte - Software Developer, Documentation writer, https://jfx-central.com, https://foojay.io/today/category/javafx/, #JavaOnRaspberryPi
- Gerrit Grunwald - JUG Leader, Java Champion, JavaONE Rockstar, ❤️ Java(FX) and IoT, may the force be with you... (He is a Legend!)
- Hendrik Ebbers - JUG Dortmund Lead, Java Champion, JavaOne Rockstar, JavaFX book author, JSR EG member
- James Weaver - Java/JavaFX/IoT developer, author and speaker.
- Jasper Potts - Developer on the JavaFX & Swing teams at Oracle. Working on the new JavaFX Applications, JavaFX UI Controls and Graphics frameworks.
- Jeanette Winzenburg - Java desktop consultant: old-time Swing/X enthusiast, grudging adopter of JavaFX.
- Jens Deters - JavaFX, MQTT_fx leader, FontAwesomeFX leader, IoT, docker, dcos, NetBeans Dream Team.
- Johan Vos - Java developer, Java Champion, co-founder at Gluon, CTO at LodgON, Using JavaFX and Glassfish, working on Gluon, Java EE, DataFX,... . (He is a Legend!)
- Jonathan Giles - UI Controls technical lead in JavaFX team @ Oracle.
- José Pereda - PhD, Structural Engineer, love coding, Java & JavaFX, JavaFXPorts, mobile apps, IoT. Software Engineer at http://gluonhq.com/ (He is a Legend!)
- Mark Heckler - Developer Advocate for Pivotal.io. Computer scientist and JavaFX author.
- Michael Heinrichs - Java, Web, JavaFX developer. Interested in agile development and public speaking.
- Michael Hoffer - Computer Scientist, Mathematician, Software Developer, Artist. (He is a Legend!)
- Mohamed Taman - JCP, Java Champions, Hacker, Speaks Java, Enterprise Architect & Software Development Sr. Manager, Mobile/ Web Architect,international speaker, IoT Geek, Author.
- Pedro Duque Vieira - JavaFX and Swing Freelancer and Consultant or more generally a Front End Freelancer, Consultant and Software Designer specialized in user interfaces, contributor to open source. Owner of Pixel Duke a JavaFX, Swing and Front End consultancy company.
- Peter Pilgrim - Java EE, JavaFX and Scala software developer.
- Peter Rogge - Java, Java EE, JavaFX, NetBeans, NetBeans RCP, Creativity, Inspiration, Motivation.
- Sean Phillips - NASA contractor. JavaFX, NetBeans Platform. Develops Deep Space Trajectory Design tools and also JavaFX author.
- Stephen Chin - JavaFX evangelist, author, speaker, and open-source hacker.
- Thierry Wasylczenko - Java, JavaFX, Agile, Speaker, RebelLabs author, SlideshowFX leader.
- Tobias Bley - Software Developer & graphic designer skills: java, jpro, JavaFX, Swing, JNI, JavaEE... .
- Tom Schindl - Eclipse Committer, e(fx)clipse project lead and CTO at BestSolution.at
- Weiqi Gao - JavaFX Author
- William Antônio - JBoss Support Enginner and JavaFX enthusiast. Java* Blogger.
Tutorials
Good online resources including free and paid courses to learn JavaFX.
- Building Your First JavaFX Application - This course will provide you with a quick introduction to basic JavaFX features and help you build your first JavaFX Application.
- code.makery - Multiple Language Online Site with great materials and examples to teach you JavaFX.
- FXTutorials - A wide range of practical YouTube video tutorials focusing on Java/JavaFX.
- JavaFXTutorials - Online Materials and Examples for learning JavaFX.
- JavaFXTuts - Complete javafx tutorials for beginners with a lot of examples.
- Jenkov JavaFX - Jenkov JavaFX Tutorials and Articles with good examples to demonstrate you how you can use JavaFX Features.
- JFX Central > Learn - Tutorials in three categories: "Learn JavaFX", "Learn JavaFX on Mobile", and "Learn JavaFX on Raspberry Pi"
- Lynda JavaFX GUI Development - Learn how to develop graphical user interfaces (GUIs) for enterprise apps with JavaFX.
- TeamTreeHouse Build a JavaFX Application - Learn JavaFX fundamentals, Event driven application development and Client based application layout.
- TheNewBoston JavaFX - Youtube JavaFX Video Tutorial. It's Simple and it's good place to start JavaFX.
- Udemy Build Outstanding JavaFX - Udemy Video Tutorial for JavaFX. Build Outstanding Java Apps with JavaFX much faster. Launch a beautiful Java app by the end of the week. Learn smarter Programming with the JavaFX GUI Framework.
Talks
Interesting talks in conferences like JavaOne, Devoxx and others
- Creating Amazing Visualization Tools With JavaFX 8 (3D) - By Michael Hoffer<br/> Screencast that covers most topics from JavaOne 2013 Tutorial TUT6705: http://mihosoft.eu/?p=928<br/> JavaFX is a powerful rich-client platform that is ideal for complex visualizations. In this tutorial, you will learn how to create amazing 2-D and 3-D visualization tools such as an interactive function plotter with Java 8 and JavaFX 8. For 2-D plotting, you will learn how to use the powerful charting API that comes with JavaFX. In addition, you will find out how to load 3-D geometries from text files (and a subset of .obj), render movies from JavaFX 3D via its snapshot functionality, and use the ray picking API for retrieving detailed information on parts of 3-D visualizations. To create nice-looking applications, the tutorial utilizes open source controls from the JFXtras project (jfxtras.org).
- DataFX: The Best Way to Get Real-World Data into Your JavaFX Application - by Hendrik Ebbers and Johan Vos<br/> The real value in most client-oriented business applications is the data sitting on remote servers and cloud systems. Unfortunately, retrieving and displaying this data is an exercise left to the developer, and it must be done (correctly!) before end users can interact with it. Fortunately, the open source DataFX framework aims to simplify this by enabling JavaFX developers to easily retrieve data from a variety of sources in several formats and rapidly integrate it with JavaFX components (such as TableView), using typical JavaFX patterns. This session introduces the free and open source DataFX project, gives practical advice for using it, and provides insight into future plans for this project.
- DataFX: From External Data to a UI Flow and Back - by Hendrik Ebbers and Johan Vos<br/>The open source project DataFX 8 builds on the core principle of DataFX 2: make it easy for JavaFX developers to retrieve external data (using REST calls, database systems, or custom methods) and visualize this data in JavaFX controls. Using DataFX, you can populate UI controls by using the most-common protocols, including REST, SSE, or WebSocket. Apart from retrieving data, the Flow component in DataFX enables developers to describe different flows between UI components and to inject data models into the flows. This session shows how the different DataFX components make it easy to manage external data by using well-known Java technologies.
- Enterprise JavaFX - by Hendrik Ebbers<br/> The talks shows several APIs and technologies that usefull to create JavaFX applications that communicate with a server
- Java on Mobile is a thing... and it's really good! - by Johan Vos<br/> In this session, we show how to use your favourite IDE to write a Java Client application, and how to use that same IDE to create native applications that can be uploaded to the different appstores. These native applications use exactly the same code as a Java desktop application. We talk about the status of JavaFX on Mobile, and about the options for running Java code on mobile devices (e.g. Dalvik/ART, RoboVM AOT, OpenJDK with the Mobile OpenJDK project).
- Let’s Get Wet! AquaFX and Best Practices for Skinning JavaFX Controls - by Hendrik Ebbers and Claudine Zillmann<br/> JavaFX offers a wide range of default controls for creating cool and great applications, from business to entertainment use cases. Because JavaFX is a multiplatform UI framework that can be used mainly on desktop-based platforms and embedded devices, a cross-platform skin named Caspian is provided by JavaFX. As of Java 8, Modena will be a official second cross-platform skin for JavaFX, but some applications and developers have a definite need for native or custom skins for their controls and applications. This session points out how to create custom skins for JavaFX controls. You will learn that with AquaFX, this custom skin can even feel like a native one.
- Looking at Music, an experiment with Kotlin, JavaFX, MIDI, and Virtual Threads - by Vik and Frank Delporte<br/> When a nerdy dad and music-playing son join forces and start experimenting with music and code, some nice things can happen. Did you ever present your music piece in a business dashboard with charts? Did you know that the FXGL game library can be used to generate a piano with fireworks? Let's look at music with the MelodyMatrix application and guide you through the process of how a small experiment turned into a full-blown project. Join the first Devoxx talk with a live piano performance by a 14-year-old musician-coder, and let's have a battle between human and machine! Who is the best piano player? The musician or a few thousand Virtual Threads? And how far can we push the app's performance to send ByteArrays to an LED strip to react to the music? Topics in this talk: Kotlin, Java, JavaFX, Gradle, FXGL, MIDI, Vaadin, GitHub Actions, JDeploy,...
- Test-Driven Development with JavaFX - by Hendrik Ebbers and Sven Ruppert<br/> This session presents existing testing tools and frameworks in their current stage of development. It compares the capabilities and the kinds of impacts of existing projects. The presentation pays particular attention to questions such as How can a cross-platform GUI test be created?’With many legacy (Java Swing–based) applications in need of migrating to the new JavaFX 8 platform, it is imperative for GUI code to be testable. The industry needs better strategies and tools for efficient migration from Swing to JavaFX 8.
- The JavaFX Community and Ecosystem - by Hendrik Ebbers and Alexander Casall<br/> Do you want to start working with JavaFX but don’t know where you can find all the cool tutorials and open source APIs? This session is the perfect place to be! Leading up to the Java 8 release, a huge ecosystem with a lot of good tutorials and open source frameworks surrounds JavaFX. The community is getting bigger and bigger. The presentation introduces some of the most important parts of the JavaFX ecosystem such as third-party frameworks and popular knowledgebases and illustrates the functionality and synergy effects between the libraries with a live coding session. The session ends with real-world applications demonstrating the techniques and APIs discussed earlier.
Slides
Useful slides from Slideshare
- JavaFX 10 things I love about you. An Introduction to JavaFX.
- JavaFX Pitfalls. Tips and tricks regarding JavaFX.
- The JavaFX Community and Ecosystem. JavaOne talk about the Ecosystem in the year 2014.
- The JavaFX Ecosystem. A collection of Open Source libraries for building JavaFX applications.
Articles
Interesting Articles about JavaFX
- Building a JavaFX Search Bar - How to add a search bar to your JavaFX user interface. The article is based on a real application and includes links to all of the source code.
- Dependency Injection in JavaFX - A guide to implementing Dependency Injection in a JavaFX application.
- How JavaFX was used to build a desktop application - A look at some of the features of JavaFX and how they were used in building an application. The article includes links to all of the source code on GitHub.
- Installable Java Apps with jpackage - How to create installable bundles for your JavaFX application for Mac, Linux and Windows using jpackage.
- JavaFX 8 Refcard - Gives you what you need to start using the powerful JavaFX 8 UI and graphics tool with code snippets and visual examples of shapes and controls.
- JavaFX Refcard - Gets you started with JavaFX, which makes it easier to build better RIAs with graphics, animation, and media.
- User Interface Testing with TestFX - A guide to using TestFX to automate JavaFX user interface testing.
Real World Examples
Real World Examples of JavaFX and Applications
- 20 real world examples on JAXenter
- AsciidocFX - Asciidoc FX is a book/document editor to build PDF, Epub, Mobi and HTML books, documents and slides. AsciidocFX is also a winner of Duke’s Choice Award 2015.
- binjr - binjr is a time series data browser; it renders time series data produced by other applications as dynamically editable charts and provides many features to navigate through the data in a natural and fluent fashion (drag & drop, zoom, history, detacheable tabs, advanced time-range picker).
- Boomega - A modern book explorer & catalog application
- Bounding Box Editor - A multi-platform JavaFX image annotation application to create and edit ground-truth labels for object detection and segmentation machine learning models.
- Deep Space Trajectory Explorer - This is an application used by NASA. This tool allows a trajectory designer to identify, compare and export deep space 3 body system trajectories.
- EPUBCheckFX - A graphical application to validate
epub
files against the official EPUB specification. - Everest - Everest (formerly RESTaurant) is an upcoming REST API testing client written in JavaFX. Looks like Postman but writen in Java.
- FX2048 - The game 2048 built using JavaFX and Java 11.
- FXDesktopSearch - FXDesktopSearch is a Java and JavaFX based Desktop Search Application. It crawls a configured set of directories and allows you to do fulltext search with different languages support on the content.
- Hello Minecraft! Launcher - HMCL (Hello Minecraft! Launcher) is a cross-platform Minecraft launcher which supports Mod management, game customizing, auto installing (Forge, LiteLoader and OptiFine), modpack creating, UI customizing and so on. HMCL was developed based on Swing and migrated to JavaFX in v3.
- JavaFX In Action - A series of interviews by Frank Delporte, showing real-life use of JavaFX within companies, opensource applications, etc.
- JStackFX - It is not an easy task to analyse thread dumps as files generated by the jstack tool provides raw text files. JStackFX will help you to do that with a nice FX GUI.
- Mindolph - Mindolph is an open source personal knowledge management software for all desktop platforms. It is also a mind map editor, which is probably the best mind map tool developed by JavaFX.
- Modellus - Modellus is a freely available Swing and JavaFX app. It was the first application to integrate both Swing and JavaFX together in a single app (back then using a custom made solution - JXScene - not available at the time). It is used all over the world, specially in High School and Universities, and has appeared in several published scientific papers. Samples range from Physics to Mathematics, going through Mechanics, Chemistry, Statistics, Algebra, Geometry, among others.
- Musicott - Musicott is an application that manages and plays music files. Coded in Java 8 with JavaFX.
- OwlPlug - A multi-platform audio plugin manager, developed using Spring Boot and JavaFx.
- PacManFX - A JavaFX UI (2D + 3D) for Pac-Man and Ms. Pac-Man.
- PDFsam Basic - PDFsam Basic is an opensource JavaFX application to merge, split, extract pages, rotate and mix PDF files.
- PrettyZoo - Pretty nice Zookeeper GUI created by JavaFX & Apache Curator
- Recaf - An easy to use modern Java bytecode editor.
- ResumeFX - ResumeFX renders a JavaFX view of .json file that follows jsonresume.org standard and has the necessary configuration to be embedded in the web browser thanks to JPro.
- SkedPal - SkedPal™ combines the best elements of creativity and structure to optimize your time and productivity.
- VocabHunter - VocabHunter is a system to help learners of foreign languages.
- WavesFX - A community-driven Waves desktop wallet which offers users multi-network and multi-address functionality.
- XR3Player - XR3Player is an opensource Java/JavaFX Media Player, WebBrowser, Media File Organizer, aiming to be something more than a Media Player.
Contribute
Contributions are always welcome!