A) Getting Started


Outcomes

By the end of this introduction you should:

  • Have all the required software downloaded and set up to start development of Helium DSL apps
  • Have all the required credentials and access privileges to get started
  • Have a working folder prepared



General Hardware and Software Requirements

  • A desktop or laptop PC running a modern Linux or macOS operating system
  • A web browser such as for example Google Chrome, Safari or Firefox 
  • An active internet connection is required to deploy and test apps
  • Although no specific system hardware requirements are defined, the minimum requirements for Java can be used as a guide



Signing Up to Helium

To develop against Helium and deploy apps you will need to be registered on a development server. This can be achieved as follows:

Open a web browser and navigate to the appropriate Helium development server. A list of available development servers can be found here. This server can be used throughout the tutorial. You should be presented by the following:

Click on "New to Helium?" and follow the steps to sign up with your mobile number which will serve as your username. You will receive a one time pin (OTP) by SMS and then be requested to change your password.



Required Credentials and Developer Privileges 

Once you have registered on a development server and thus specified credentials for the Helium Core Web app, you can proceed to request API credentials and developer privileges by following the official support process as described here.



Required Software


Java

In order to deploy Helium apps, you will need to download and install the latest version of the Java JDK 8 which can be found here (the current version of the HeliumDev Client is incompatible with JDK 9 or higher). Simply download the installation files and follow the instructions to complete the installation.



The HeliumDev Client

To interact with a Helium server from a laptop or desktop PC, the Helium development client, also known as the HeliumDev client has to be used. The HeliumDev client can be downloaded from here. To download the HeliumDev client you will need to specify which environment you are developing on. This is the same environment for which you signed up and for which you requested API credentials and developer privileges. You will also need to provide your API credentials for the specified environment.



IDE or Text Editor

To write code for a DSL application you will need to use either an IDE or text editor of your choice. An officially supported Netbeans plugin is available for download. For more information on the Netbeans plugin, including installation and usage instructions, please consult the detailed documentation: Helium Netbeans Plugin (deprecated).

Whichever IDE or text editor is selected, having syntax highlighting will be useful. Due to the similarities in syntax between the DSL and Java, this should be achievable in most editors by simply configuring the editor to interpret .mez files as java files.



Creating a Working Folder

The next step is to create a working folder on your computer. This is the location where the source code for your DSL app will reside while working on it locally. This folder should be dedicated to your project source code and resources and should not include other software or tools, such as the HeliumDev client.

Use an appropriate file explorer and create a working folder in a location of you choice. Alternatively, use die mkdir command from a command line terminal. Take note of the absolute path to your working folder as this will be needed in the next step.



Running and Configuring the HeliumDev Client

The final step in preparation for developing and deploying apps on Helium is to configure the HeliumDev client for the server that you are developing against, your API credentials and your specific project. The following guide describes this configuration in detail:

Using the HeliumDev Client and Deploying Apps



General Debugging & Troubleshooting

In addition to the compile error and warning messages generated by the HeliumDev client, Helium also provides a streaming web service for custom log messages and any error messages generated by Helium for your application. For more detail and usage instructions see the detailed documentation here:

Helium Logging Service

There is also a Troubleshooting section in the above-mentioned Using the HeliumDev Client and Deploying Apps guide. 


Note that in order to make use of the Helium Logging Service, you will need to know what the app id for your app is. Instructions on how to obtain this id can be found here.

Additional Resources

The links below summarises useful external resources and resources internal to this wiki space that are referenced in this document:

External Resources

Internal Resources