Definition of fun (noun) from Merriam-Webster
- what provides amusement or enjoyment; specifically : playful often boisterous action or speech <full of fun>
- a mood for finding or making amusement <all in fun>
- amusement, enjoyment <sickness takes all the fun out of life> <play games for fun>
- derisive jest : sport, ridicule <a figure of fun> <They made fun of the way he talked.>
- violent or excited activity or argument <Insults were exchanged and then the fun began.>
Fun, that is how I would describe programming with TornadoFX.
Building a desktop application with this framework is really enjoyable. If you are building desktop applications in Java I recommend you spend some time looking at this project.
The project’s home is found on GitHub at – https://github.com/edvin/tornadofx. The author/owner is Edvin Syse. On the project page there are links to the documentation, YouTube channel, wiki, and Slack channel.
The documentation is very good. It is actively worked on by team members and updated as new features are added. The wiki was the original source for information and it still is relevant. Be sure to check both places for information.
The Slack channel is where you can find most of the community. It is quite active, with the project’s author and other committers on most of the day. Don’t be shy to ask questions that might seem trivial as the members of the channel are quick to answer and provide help. Even questions that aren’t specifically related to TornadoFX but more general to JavaFX seem to pop up.
I would say that the interaction there has been one reason I like the project so much. The community is very friendly and excited about the project. They frequently share how they are using the project and their thoughts for the future direction. Several new features have come from requests on the Slack channel.
The screencasts on YouTube provide nice tutorials given by Edvin Syse himself. They are detailed but not too lengthy in the topics they cover. One benefit of the videos is that it is nice to see how the author of the framework intends for it to be used.
Take a look at “Why TornadoFX?” for a quick overview of the framework.
Here is a simple example done in JavaFX and then with TornadoFX:
If the TornadoFX style of programming looks like it might appeal to you, check out the documentation and come back here for additional posts.
And have fun programming 🙂