Home / Java Patterns and Pitfalls     frequal.com

Java Front-End Development in 2023

TL;DR: TeaVM with Flavour Plus

In 2023, take your Java skills to the browser with the ultimate combination of speed, power, and security: TeaVM with Flavour Plus. Learn how, with this Java Magazine tutorial

Keep Everyone Happy

As a Java developer, you want to develop all your code in the same language, to maximize reuse, enable top-to-bottom refactorings, and not have to relearn skills and libraries every time the cool-language-of-the-month changes.

As a manager, you want your team to be productive, efficient, and not have any security problems.

As a product manager, you want your team to get features out the door quickly, and not spend time on technical debt from security issues or the new front-end framework change the developers insist on.

To keep everyone happy, Java development teams should be using TeaVM with Flavour Plus in 2023. It provides a single-language, refactoring-friendly codebase to enable developer productivity. It boosts productivity while maintaining security. And its stable feature set and "no churn" releases ensure the focus stays on pleasing customers.

The Java Front-End Landscape in 2023

While there are other contenders for the front-end Java crown, none holds a candle to TeaVM with Flavour Plus.

Vaadin? If the commercial licensing traps aren't enough to scare you off, their abandonment of a pure Java approach should. They are slowly migrating towards a mixed Java/JavaScript coding model, throwing away the value of full-stack refactoring and developer productivity.

GWT? The latest major rewrite (J2CL) has abandoned compatibility with traditional GWT, and is now focused strictly on Java to JS transpilation. It's like TeaVM without Flavour Plus. Why choose half a product? Why risk your project on a framework that Google might scrap again in a few years?

JavaFX? I enjoy using the JavaFX APIs, and appreciate the work that went in to designing a successor to Swing. There is a version now that compiles to the web. Try the demo here: Java FX Demo for the Web. You'll see it takes a while to launch, and the browser console will tell you why: it downloads over 82MB of data. This is a non-starter in a world that needs pages to launch in a few seconds max.

JSP/JSF? Yes, you can write a pure Java web app using JSP or JSF. But the moment the request comes in for fast validation or quick UI updates, you'll start down the slippery JavaScript slope. Soon you'll have a mix of code, duplication of validation logic, and no ability to refactor top to bottom. No thank you.

There's only one choice that combines stability, security, developer-friendliness, and performance: TeaVM with Flavour Plus.

The Winning Combo

TeaVM provides the solid core, converting Java to efficient, small JavaScript. Flavour Plus provides the front-end framework, giving developers and designers an SPA toolkit for secure, user-friendly, componentized UIs.

TeaVM is a toolkit and build plugin to convert Java to JavaScript. It:

Flavour Plus is a single-page app toolkit built on TeaVM. It:

Try It For Yourself

Last modified on 3 Dec 2022 by AO

Copyright © 2022 Andrew Oliver