Skip to main content
Version: Current

Developer training - Environment setup

Workstation set-up

Please follow these instructions very carefully to ensure your environment is ready for a productive training. It's not necessary to have admin rights on your workstation to develop with the Genesis low-code platform, but you might have to check with your System Administrator how to install the required third-party software listed here.

Hardware

  • Operating system : Windows 10 Pro
  • RAM : 32GB minimum
  • CPU : 8 Core
  • SSD : 250GB

Software packages

PackageRecommended Version
IntelliJ2023.2.6 or above
Java SDK or JDK (Choose the x64 installer download)17
NodeJS20 LTS
Genesis Intellij plugin (Depending on your runtime environment)1.0.4
WSL (Depending on your runtime environment)0.1.2
Postman (optional)8
npm8
Gradle8.3
Chrome88.0
Kotlin1.9.0

You can use a range of IDEs (for example, Eclipse) with the Genesis low-code platform, but only IntelliJ enables you to make full use of the Genesis Platform Abstraction Language (GPAL) prompts and error checks in Intellisense - a major accelerator of development speed and accuracy. Genesis strongly recommends using IntelliJ.

Accessing the Genesis repository and configuring the Genesis packages

To verify this package, type npm info @genesislcap/foundation-ui. If everything is ok, you should see a response like this:

@genesislcap/foundation-ui@0.0.26 | UNLICENSED | deps: 23 | versions: 111
Genesis Foundation UI
trouble running npm?

Please make sure:

  • You have the correct versions of the software packages, especially node and npm, as explained in the workstation setup. If you have an older version of npm (run 'npm -v'), make sure you uninstall it first.
  • If you're behind a corporate network, you may need to setup a proxy:
npm config set proxy http://proxy_host:port
npm config set https-proxy https://proxy_host:port

Install GenX CLI; this is a Genesis tool that enables you to seed projects.

npx @genesislcap/genx@latest
Local issuer certificate errors

These may be caused by running GenX CLI in a proxy network that uses self-signed or missing certificates. --insecure flag can be used to skip SSL certificate verification:

npx @genesislcap/genx@latest --insecure

Gradle set-up

Make sure you have a gradle.properties file inside a .gradle folder in your user directory; this file must contain your clear text password:

genesisArtifactoryUser=<your-artifactory-user>
genesisArtifactoryPassword=<your-artifactory-password>
proxy settings

If you are behind a corporate proxy, make sure you add your proxy settings to the gradle.properties file as well. For example:

systemProp.https.proxyHost=proxy_hostname_here
systemProp.https.proxyPort=proxy_port_here
systemProp.https.proxyUser=your_proxy_user_here
systemProp.https.proxyPassword=your_proxy_password_here
#if behind an NTLM authenticated proxy, add the next line:
#systemProp.https.auth.ntlm.domain=your_network_domain_here

If you are unsure on what settings to use, please contact your IT support.

More information here.

Your own database

To run genesis applications, you need an individual database to create and test the back-end changes we are proposing. Check the Database Technology supported by Genesis.

To do this training, we have set an H2 database so you don't need to worry about setting up a new database. This database will be created automatically during this training.

Training requirements set-up

Start the project baseline

Clone the Developer Training starting repo from here, and open it using IntelliJ.

Running the back and front end

We are going to change the back-end and front-end code, so ideally we should have the server running to make our application work. In this training, we are going to use the IntelliJ plugin provided by Genesis. So, the first step is installing the plugin following the instructions here. Then, have a look at the Tools window installed to understand it and do the configurations asked.

As soon as everything is done and you are ok about the Intellij plugin, double-check if you can see the processes running properly as explained. You must see all processes up and running or in standby mode.