Features

Minimal code, minimal cost

With OpenXava you only define the data structure and the business logic in simple Java classes; the user interface and persistence are provided by the framework. An invoicing application is 4 Java classes, not dozens of files spread across controllers, DTOs, frontend components, CSS and SQL. If you code with an AI assistant, less code means fewer tokens: the application is generated faster and at a much lower cost. And since the bottleneck is now reviewing code, not writing it, it also means less to review, fewer bugs and less technical debt.

Spring Boot and Jakarta EE, with modern Java

OpenXava applications are Spring Boot 4.1 applications based on Jakarta EE 11, with Hibernate 7 and Java 17, 21 or 25. You will feel at home: configuration in application.properties, dependencies aligned with Spring Boot and the whole Spring ecosystem at your fingertips. The generated WAR runs directly with java -jar or deploys to a standard Tomcat 11.

AI gets it right the first time

The declarative model of OpenXava, Java with annotations, leaves very little room for mistakes: the AI does not have to decide how to build the user interface or the persistence, it just describes your entities and your logic, always following the same patterns. In addition, OpenXava projects include an AGENTS.md so that agents like Claude, Cursor or Copilot generate correct OpenXava code on the first try. And unlike visual low-code tools, everything is Java code that you version with Git and review in a pull request.

Limitless flexibility

View annotations cover most cases at a high level of abstraction, but you never get stuck. You can define your own actions and controllers for a part of the application, or replace the standard behavior of the whole application. You can create your own editors for any type or property, changing how any part of the user interface is generated. And if you need to, you can generate your own HTML and JavaScript for any module.

Complete applications from day one

Smooth, production-ready web applications: no page reloads, only the necessary HTML fragments are updated. Editable list mode with pagination, sorting, filtering, configurable columns, PDF reports, Excel export and import, card view and charts. Detail mode with tabs, frames, dialogs, editors for references and collections, responsive layout, maps, discussion threads, photo gallery, file upload and dashboards. Available in 14 languages, plus a mobile user interface with XavaPro.

Modern architecture, no frontend to maintain

Under the hood, OpenXava is a state-of-the-art HTML Over The Wire engine: the user interface is generated in pure Java on the server and updated from the browser with fetch(). No React, no Angular, no node_modules, no JavaScript build. A single language, Java, from the database to the screen.

Applications with built-in AI chat

OpenXava applications come with a built-in AI chat that lets users query data, modify records and interact with the application in natural language. Instead of navigating through screens and menus, they simply ask the application for what they need. The chat is part of the OpenXava core, is based on LangChain4J and works alongside the traditional user interface.

Hot code reload

Modify entities, actions, configuration files or i18n messages and see the change instantly, without restarting the application. Hot reload built into the framework and free, with no paid external tools. Perfect for working with AI: the assistant modifies the code and you see the result in the browser within seconds, in a very fast iteration loop.

Modern look and feel

A user interface with a contemporary design, on par with leading applications such as Attio, Linear or Notion. Light theme, dark theme and an automatic theme that follows the operating system preference. Toast notifications that close by themselves, switches for boolean fields, collections with a spreadsheet look and row actions revealed on mouse hover. Your users will notice the difference.

Open source, no vendor lock-in

LGPL license that allows you to develop commercial applications without paying any fees. Your code is standard Java based on Jakarta Persistence, Jakarta Validation and Jakarta Dependency Injection, in Maven projects that you open with IntelliJ, Eclipse, Visual Studio Code, Cursor or NetBeans.

Security

OpenXava complies with the OWASP Top Ten and passes the OWASP ZAP web security test 100%, without any critical, medium or low level alerts. We release versions frequently to fix vulnerabilities and keep dependencies up to date.

Your database, your infrastructure

Databases: any supported by Hibernate, such as PostgreSQL, MySQL, Oracle, SQL Server, DB2 or Informix. Operating systems: any with Java 17 or higher, such as Linux, Windows, macOS, Unix, IBM i or z/OS. Deployment: as a standalone application with java -jar, in a Docker container or on a Jakarta EE 11 server such as Tomcat 11. Browsers: Chrome, Firefox, Edge and Safari. Also, first-class support for IBM i (AS/400): banks and public administrations around the world run OpenXava in production against the tables designed by their RPG programmers, as they are.

Maturity: over 20 years of uninterrupted evolution

Under continuous development since 2005, with around 10 releases per year: 2 minor ones, with new features without breaking compatibility, and the rest maintenance. Every few years, a new major version to stay at the forefront: we are now on version 8. 300,000 downloads on SourceForge before being distributed through Maven, 60 authors, thousands of threads in the forums, hundreds of applications developed and hundreds of professionals on LinkedIn with OpenXava experience.

Documentation and support

Complete Reference Guide, free online course where an invoicing application is developed from scratch and video course on YouTube, all in English and Spanish. Free support in the community forums, where every question gets an answer, and professional support available.