Prerequisite skills

Understand the skills required to build insurance products on Root

Overview

Root provides a high degree of flexibility and customisability in configuring insurance products. This is achieved in our low-code environment, which is exposed to our clients through our Workbench CLI tool.

In order to build products successfully in this environment, some technical skills and understanding will be useful. We have divided these skills into two categories:

  • Minimum requirements - These are the minimum skills required to make basic updates to existing products. This background is also required to complete the Dinosure tutorial.
  • Other useful skills - These are the skills you will need to configure, test and launch new insurance products successfully on Root.

Minimum requirements

Basic use of the command line

The Root Workbench includes a CLI (command line interface) tool, which is what you will use to clone a product module to your local machine, make changes, and push your changes to Root. Installing and using the CLI tool requires a basic understanding of how to use the command line to navigate between folders and enter the Workbench CLI commands.

If you are not familiar with the command line, you can start with one of these introductions:

Basic text editing

You should be comfortable using a text editor to make updates to code files. This includes opening directories, navigating between directories, opening files, making changes, and saving your changes.

Root recommends using Visual Studio Code as your text editor for working on product modules. As part of Workbench, we have enabled a custom integration with VS Code's IntelliSense extension to make building on Root easier and faster. Of course, this does not preclude you from using a different code editor of your choice.

If you are not familiar with code editors or VS Code, you can start with an overview of VS Code's basic features in the VS Code docs.

Basic coding conventions and syntax

In order to make product updates in our low-code environment, you will need a basic understanding of how to read and interpret code. A detailed understanding of specific programming languages is not required. But it will be useful to understand basic coding conventions and syntax that apply across different programming languages, such as execution flow, logical operators, code blocks, key-value pairs, and lists.

If this is entirely new terrain, you can start with this introduction.

Other useful skills

JavaScript

On Root, more complex business rules, such as your product's pricing logic, is configured in JavaScript in the product module code. In order to build successfully on Root, you will need a solid grasp of JavaScript fundamentals. If you are not familiar with JavaScript, you can start with this introduction.

Understanding the following features of JavaScript is likely to be useful:

  • Asynchronous execution - Knowing how to handle asynchronous operations in JavaScript is important if you will be making API calls from within the product module code (for example to an external pricing engine), or if you use the Root SDK. You can start with this introduction.
  • Destructuring and the spread operator - These features dramatically simplify working with objects and arrays in JavaScript, which is useful for storing and modifying parameters on policies and other data objects on Root. You can start with this introduction.

Aside from standard JavaScript features, it will also be useful to understand these two external JavaScript libraries, which are enabled on Root:

  • Moment.js - Root enables this library in the product module code to make it easier to parse, validate, manipulate, and display dates and times.
  • Moment Timezone - This is an extension to the Moment.js library that allows you to parse and display dates in any timezone.
  • joi - This is is a powerful and popular data validation library, allowing you to define custom schemas to validate the data sent to your product's configurable API endpoints, like the quote hook and the application hook. Note: Root currently supports version 11.3.4 of joi.

JSON

On Root, various user interface features such as quote and application schemas, and claims blocks, are configured as JSON (JavaScript Object Notation) schemas. Working with JSON is also important for interacting with Root API endpoints.

If you are not familiar with JSON, you can refer to this introduction on MDN.

HTML & CSS

Root allows you to build attractive and robust policy document templates that align with your corporate identity and design language. These document templates, such as the policy schedule and welcome letter, are configured in HTML. At document creation time, the platform converts these HTML files into PDF documents before they are sent to the policyholder.

To create attractive and robust policy document templates, you will need a good working knowledge of HTML. This includes knowing how to embed external images in HTML files, and how to apply style properties like position, margin and padding to HTML elements.

For an introduction to HTML and CSS, you can follow the following tutorials:

APIs

As part of configuring a new product on Root, you will customise certain product-specific API endpoints for your product module. For example, as part of configuring the quote hook for your product, you will customise the input parameters accepted by the getting a quote endpoint, as well as the module parameters on the quote package object(s) returned by this endpoint.

In order to test these customised endpoints, it will be useful to understand how RESTful APIs work, and how to interact with them using a tool like Postman. If you do not have experience interacting with and testing API endpoints, the following resources could be useful:

  • A general introduction to RESTful APIs.
  • A tutorial on using Postman to interact with and test API endpoints.