Skip to main content
Version: 2023.1

Fields - advanced


Genesis is modular, so if you have a dependency on another module (e.g. Auth), your project will naturally inherit all the fields from that module and and they are available in your project.

It makes sense to re-use fields in dependent modules wherever possible; this cuts down your need to define field names that are unique across all modules and the project itself.


GPAL is a scripting language that gives engineers plenty of advantages, especially when it comes to repetition.

For example, where you need to create a large number of table fields, say ALGO_PARAM_1 through to ALGO_PARAM_50, you can introduce for loops:

  val algoParamPrefix = "ALGO_PARAM_"
for(i in 1..51) {
field(name = algoParamPrefix + i, type = STRING)