JavaFX Links of June 2023
Again a lot has been shared this month in the jfx-central.com #LinksOfTheWeek! And that website itself is “under heavy construction” as version 2 is getting a completely new design and several improvements. Your help is wanted! See the last section of this summary…
Core
- Rampdown Phase 1 (RDP1) for JavaFX 21 starts on July 13, 2023 at 16:00 UTC (09:00 Pacific time), about four weeks from now.
- JavaFX 21 Early-Access Builds Build 21 is available from jdk.java.net/javafx21, addressing these issues. JavaFX 21-ea is designed to work with JDK 21-ea, but it is known to work with JDK 17 and later versions.
- Johan Vos is planning to spend more time on Java on Mobile (OpenJDK Mobile) in the near future: “There is 0 support from big tech because they fall in 2 categories: 1/ they have no revenue on mobile, 2/ they have competing OS tech that drives devs/users to their revenue-driven cloud services. But since I’m not big tech, I can just do it.”
- Gluon asks all JavaFX developers to give JavaFX 21-ea+21 a try.
- And is working on making their JavaFX software (libraries, tools, components) more consistent and developer-friendly: “Over the past years, we learned a lot, and we’re putting that experience now in our code.”
- Dirk Lemmermann is looking for help with a Webkit issue in JavaFX 18.0.1.
- Abdelrahman Bayoumi explores a solution to resolve the challenges when it comes to rendering Arabic, being a right-to-left script.
Applications
- Sean Phillips is almost ready to make the sources of Trinity available…
- He is using Trinity to distinguish between human and chatGPT altered text.
- After teasing us for a few weeks, it finally happened! Sean Phillips announced that Trinity, an Explainable AI Analysis and Visualization tool written in Java and JavaFX, is now officially public and open source. His message: “Have fun you fine young cannibals.”
- Video demo of Trinity to project and distinguish between human and chatGPT altered text blurbs.
- With many thanks to JavaFX 3D, Jasper Potts, Alexander Kouznetsov, Chien Yang, Kevin Rushforth, Richard Bair, and many others for all their hard work on JavaFX and 3D and more!
- Sean Phillips shared a screenshot: projecting decision manifolds from Pilot Assist AI Models for dog fighting pilots.
- Rendering a rainbow highway.
- Johan Vos is still impressed by the Devnexs keynote given by Sean: “This is a very cool demonstration about Trinity, an open-source tool developed/used at John Hopkins University. It shows how Java developers can create cool, amazing and extremely useful stuff with great visualization using JavaFX.”
- Christopher Schnick improved the speed of Pdx-Unlimiter with cached dynamically generated images.
- Deep Netts has a neural network visual weights analysis tool ready for the next release. It helps to understand what’s going on inside layers, and debugging trained networks.
- Maleesha Herath introduces “tecmis”, an Information Management System that revolutionizes how educational institutions handle data.
- Tobias Briones finished the implementation for Code Snipped Slides with the exact color scheme of IntelliJ, except for specific language tokens. It’s all composed with JavaFX Nodes, like Shapes.
- New version of Mapton with bug fixes and minor improvements along with new WMS sources. Dependencies such as NetBeans 18 platform and the bundled Java & JavaFX from Azul are updated too.
- Christopher Schnick gave the welcome page of v1.2 of XPipe some personality.
- Dirk Lemmermann really likes the latest version of the sample app for AtlantaFX: “Very nicely polished theme and controls. Packaged with Conveyor from HydraulicDev.”
- Maciek Gorywoda shared v1.0.0 FxCalculator: “It’s, well, a calculator for your Android phone.” Read the whole thread to learn more, e.g. that it’s written in Scala 3.3, JavaFX, Gluon, and built with GraalVM Native Image.
- Jamie Macaulay is working on SUDUnpacker to handle SoundTraps sud files.
Games
- Johan Vos stumbled into this addictive web game, written in JavaFX by Gerrit Grunwald using WebFX: tetris.webfx.dev: “It’s great to see how developers are using JavaFX to make cool stuff.”
- OrangoMango made Snake v1.0 available on itch. Thanks to WebFX, there is now a web version that is playable in the browser (fullscreen is recommended).
- He extended his chess game with drag and drop, and improved the image resolution.
- He also shared a video showing collision detection with convex shapes. It resulted in a nice chat with Sean Phillips and Carl Dea.
- He added a teleport stone, a propeller, and rotating platforms to FoodDice. New levels with those new items are coming in the next update. Also implemented the new collision system that he wrote before for these new rotating items.
- And he has been experimenting with a physics engine made from scratch. Right now, there are just some basic physics laws and chains.
- Another JavaFX game has been ported to the Web with WebFX Food Dice!. It’s a plain JavaFX game written for the GMTK Game jam 2022 and was coded in 48h from scratch with no 3rd party lib. Congrats to the 16-year-old author OrangoMango**. Play online on fooddice.webfx.dev.
- Almas Baim shows image mesh warping: “No specific use case, but I’m sure this will come in handy for some cool effects in the future.”
Components, Libraries, Tools
- Last week we shared the TreeMap chart by Matt Coley here. In a new video, you can see a practical demo of TreeMapFX in Recaf.
- Sven Ruppert shared that work has started on TestFX 4, after longer silence. You can find the project on testfx.github.io/TestFX.
- Dirk Lemmermann sees there truly is a big need for custom window decorations and found an extra one.
- Jaroslav Tulach is discussing JavaFX Lite and is asking for feedback: “Would you find #javafxlight - e.g. coding in #javafx & rendering via #HTML5 useful?”
Podcast, Videos
- Gerrit Grunwald and Ixchel Ruiz talking at JNation about Graphical User Interfaces with Java.
- Foojay Podcast #25: Game Development with Java, JavaFX, and FXGL. Gerrit Grunwald (aka _hansolo), Almas Baim (aka the FXGL creator), and Chengen Zhao (aka WhiteWoodCity) talk with Frank Delporte about why Java should be on your game-development-language-list.
Tutorials
- Coding Examples uploaded new videos to “JavaFX 3D Tutorials”. For example: “Animation | Fade Transition”, to create a Text and make it blink using the FadeTransition class. using the shape’s transparency to achieve the required effect.
- Sten Nordström got asked if there are any good JavaFX courses available?: “Asker has experience with other platforms and some Java knowledge. Online, or possibly in person in Scandinavia/Northern Europe.” Who has more ideas? What should we add to jfx-central.com/tutorials?
- This is actually a nice one :-) ! MITHIN DEV shared “Building Your First JavaFX App!”
- Not new, but a nice reminder by Jakob Jenkov: “I have a tutorial covering a lot of the basics of JavaFX”.
- In French: Jason Champagne has a series of videos, part 2: “Point essentiel en JavaFX sur l’architecture des différents composants, en particulier le Scene Graph et la gestion des fenêtres (stages)”.
- Not new, but just discovered: Video series by Jaret Wright to create a JavaFX Memory Game.
Miscellaneous
- Donald Raab is hoping to get back to experimenting with JavaFX again this summer and to submit conference talks…
- Sten Nordström is looking for JavaFX tutorials: “Asker has experience with other platforms and some Java knowledge. Online, or possibly in person in Scandinavia/Northern Europe.” Who can help him? First starting point should of course be: jfx-central.com/tutorials ;-)
- A help request on Reddit to build a JavaFX project in VsCode.
JFX-Central
- Service call to all the people who have “something” on JFX-Central (library, book, tutorial,…). We are reviewing all info on the website in preparation of the new JFX-Central version. But we need your help, please contact us or make a pull request in jfxcentral-data to make sure all the info is still correct and up-to-date. Thanks!
- More previews of version 2 of jfx-central.com:
- Dirk Lemmermann is drooling with the layout.
- And more drooling…
- Social login capabilities were added.
- And he is having almost too much fun :-) Added banners to the tips and tricks pages.
- Finding out what’s coming to the next JavaFX release will be super easy by visiting the new OpenJFX page on JFX-Central.
- Finding that one library you recently heard about will be easy via JFX-Central… and who wrote it, and videos showing it, and the repo coordinates, and and and.
- Lee Wyatt, one of the main contributors to the new JFX-Central version added a “Credits” page, one of the many pages he created and/or improved.
- Dirk Lemmermann wants your opinion about a new logo for jfx-central (and JavaFX itself?)
- First idea with a lot of remarks and adjusted proposals by others.
- The next proposal.
- After many iterations, Dirk found the perfect new logo: “Work on the logo for the JFX-Central website is finished. In the end large, small, color, black, white, etc…. versions were needed to make it look code in all places.”
- Testing the layout of the new version with “responsive design” mode is in Safari.
- And the new desktop version will come with its own custom stage when running on desktop. Other improvements for the app version of the new JFX-Central:
- A couple of screens were added for a nice bootstrap sequence. When running the app for the first time it will clone its data repo (takes a while). Any launch after that will perform an update on it (fast).
- It will also come with a tray icon for quick access to anything JavaFX
- It is now an even better citizen when running on Mac. Can you spot the difference aka the “dots”?
- We have been very busy working on the new JFX-Central version… Maybe you want to help out? The repository is now public! Feel free to make contributions. Testing, and reporting bugs. All are very welcome.