Vaadin has introduced a new web framework for Java developers, Hilla, that combines the backend with Spring Boot and the frontend as a mix of TypeScript and Lit.
Formerly known as Vaadin Fusion, Hilla offers many capabilities to simplify business application development, such as providing a unified project setup for Java and TypeScript that remains in sync. It has a comprehensive set of UI components, e.g. Vaadin components. It also offers support for single-page applications including Spring Security for securing applications.
Hilla contains all the necessary artifacts that a web application requires, such as routing, forms, security, build tooling etc. On top of that, the framework provides an automatic TypeScript code generation that keeps the frontend in-sync with the front end. For example, if a developer creates the following endpoint in Spring Boot, two items are linked:
A developer codes Java | Hilla automatically generates TypeScript |
|
|
Hilla requires Node version 16.14 or higher and JDK 11 or higher, and instructions are available in the Getting Started guide.
Hilla is made and maintained by Vaadin, however, it doesn't include the Vaadin Flow. Instead, it uses the Lit, a lightweight library similar to ReactJs, for building native web components. Along with this, Hilla includes both frontend and backend in the same project. Regarding this, Leif Åstrand, product management lead at Vaadin, mentioned that:
Contrary to conventional wisdom about separating the frontend and the backend, we're looking for opportunities to optimize based on bringing server-side Java and client-side TypeScript closer to each other.
The Hilla framework currently supports only Spring Boot. Support for other frameworks, such as Quarkus or Jakarta EE, are not yet on the roadmap. On Spring Boot, Åstrand continues:
Nowadays, Spring Boot brings most parts of the Java ecosystem together in a way that works based on conventions, with minimal need for separate configuration.
Although the first major release of Hilla supports Java, a Vaadin webinar explains that other JVM languages, such as Kotlin, could be included in the future. Furthermore, since it is an open-source project currently under Apache 2.0 license, anyone can view, extend and modify the source code and report issues.
Developers who want to evaluate Hilla can leverage Vaadin's initial materials via their documentation, a webinar, and a Spring Tips blog post. The source code may be found on GitHub.