Generating CUBA applications from the annotated DDLs

Typical business applications have 100s of tables. Many of them follow similar patterns (lists, master-detail). All these need CRUD forms.

It takes a lot of time if we write them manually. CUBA Studio is great for creating tables and screens with visual designers but who wants to repeat this for 100s of tables?

I wanted a tool which would generate CUBA entities and CRUD forms from an annotated CREATE TABLE statements.

This is what I came up with:

From this:


To this:




As far as I know there is a built-in reverse engineering tool in CUBA Studio:

You may generate data model and CRUD screens using your database connection.

Thank you for the link. I used CUBA CLI’s create-screen and I missed table columns in the generated files. I wanted to generate complete screens based on the @annotations in the DDL files.

CUBA Studio is great but I have 400+ tables in my project and I wanted to avoid manually clicking through the wizards.

CUBA is only the first “target”. I want to be able to generate the same application in other frameworks in case a client prefers other platforms/languages.

It all started as a proof of concept after reading Derek Sivers post about puting data logic inside a database (

It could be a valid approach for medium sized business applications (and small teams). I wanted to see how much time could be saved using a tool like this.