Improve expressiveness of a typical Intranet application by using Groovy DSL (Domain Specific Languages).

DSLs are statically typed, most errors are detected during the development cycle and IDE can autocomplete code more easily.

The Taack Framework also allows to shorten usual application code by avoiding GSPs and manage common operations (filter, save, show).


The Taack Framework depends on the Grails application framework. Grail brings the runtime context. Grails infrastructure has the following characteristics:

  • On top of SpringBoot (and Micronaut)

  • Uses Groovy as main language

  • Uses Gorm for data persistence over various technologies

  • Uses GSP or JSP for page rendering

  • Brings simplicity to Java EE by obeying to the moto Convention over Configuration


In a web application, entry points are URLs. They are called actions in Grails terminology.

Actions are responsible for updating browser state after user events (like a click, a key pressed, mouse move …​).

There are 2 kinds of actions:

  • ajax actions: the page is updated by some Javascript code seating into the browser. The URL displayed in the browser does not change (in our case).

  • non-ajax actions: complete page is reloaded by browser. The URL displayed might change.

Taack Framework seats in the middle of those 2 kinds of actions: It is not a fully ajax framework, it is mostly an old school framework generating complete pages into the server with the capability of updating a portion of a page using ajax.

The browser internal state is kept minimal this way. On the server side all actions are stateless. On the browser side, the stack of modal windows and their layouts, defined by blocks, are stored to manage content updates.

Additional Framework Characteristics

  • Modular application approach

    • Developer can focus only on their Gradle Modules

  • Support for PDF, CSV or Mails along HTML rendering

  • Statically typed

  • Intellij IDE Support

  • DSL rendering is done in one pass, most of the time