Install and set up Skedulo Packages SDK

Install and set up the Skedulo SDK.

System requirements

  • Mac: macOS 10.14 (Mojave) or later
  • Windows: Windows 7 or later
  • Linux: The SDK is built using the Applmage extension, which supports all common Linux distributions.

SDK installation requirements

  • Open SSL
  • NVM
  • Yarn v1.22 or later

Set up Node.js

The Skedulo SDK requires the correct version of Node.js to be used throughout the development process as follows:

  • During local development, the SDK validates that Node Version Manager (NVM) is installed on your computer and then validates that the runtimeVersion property is set in your package (see the sections that follow for details on how to add this property).

  • When the package is loaded, the SDK will detect what runtime version the package is set at and spawn a new process with that Node.js version to compile and run the package on your computer.

  • The build process (starting after the package source is uploaded) uses a Docker image with the Node.js version set on your package. The Node.js version being used is printed out in the build log so that you can verify it.

  • When a package that contains connected functions is installed, the connected functions will be installed at the Node.js version specified in the runtimeVersion property at the function level.

Follow the instructions below to ensure that the correct version of Node.js is being used.

Set up Node Version Manager (NVM)

You need to install Node Version Manager and use it to install Node.js versions as needed. NVM allows you to use multiple Node.js versions.

  • If you’re using macOS with homebrew:

    brew install nvm

    If you’re using Linux, WSL or another *nix OS, or don’t have homebrew installed follow the instructions from NVM provided here.

Install Node.js

  • When NVM is installed, install Node.js v18 and switch to it by running:

    nvm install 18

    nvm use 18

When finished using the SDK, you can switch to other versions of Node.js as required. Ensure you switch back to Node.js 18 before using the SDK.

Download the SDK

  1. In the web application, open Settings -> Developer tools -> Web extensions.
  2. Click Download Packages SDK in the upper-right corner to download and install the Packages SDK. This is a .zip file that contains the SDK installer for your operating system.
  1. You will see the following message when the SDK is downloaded and ready for set up:

    “Welcome to Skedulo’s Packages platform. You need to setup self-signed SSL certificates to continue. Click here for instructions on how to do this.”

SDK setup

The SDK comes with an in-built set of instructions to help you set up the SDK for your local environment.

When complete, all three requirements (OpenSSL, Yarn, and NVM) will be marked as complete and you can proceed to the next stage.

  1. Click the here link in the welcome text to open the SDK setup instructions.

  2. Make sure the correct versions of Node.js and Yarn are installed. If you’re unsure which version of Node.js you have, run node --version from your terminal.

  3. Set up the self-signed SSL certificates.

    For for the SDK to work, you will need a self-signed SSL certificate for your system.

    a. Click on the blue highlighted text link “here” in the welcome text of the homepage.

    b. This page provides you with tailored instructions on how to create locally signed SSL certificates and set them up.

    Connected Pages

  4. When installation is complete, the SDK installer instructs you to enable developer mode in the Skedulo web application. Return to the web app and toggle the Developer Mode switch to Enabled.

    SDK Enable Dev Mode

Enable developer mode

To begin developing a package or standalone web extension, you will have to enable developer mode.

Prerequisite

You must have installed and set up the SDK and it must be running. This is detailed in the SDK Setup procedure above.


  1. In the Skedulo web application, click your user Profile -> Settings -> Extensions.

  2. In the Extensions section, click the Developer Mode Enabled toggle button at the upper-right.

    Enable developer mode

  3. When developer mode is turned on, the web app will connect to the SDK and display the development options.

    If it does not connect, check that your SSL certificates are set up correctly.

    The following screen message appears:

    “Welcome to Skedulo’s Packages platform. To begin, select one of the following options.”

    Connected Pages

Specify the Node.js version in new packages

For any package being created or upgraded to use a more recent version of Node.js, do the following:

  • In the package metadata file at the package level (sked.pkg.json), add the following property: runtimeVersion and the version to use.

Specify the Node.js version in packages with connected functions

For packages being upgraded to Node.js v18 that contain a connected function, do the following:

  1. Ensure that the value of the runtime property in the package-level metadata file is the same as that being used in the corresponding property in sked.proj.json at the connected function level.
  2. Update the yarn commands for the function in package.json to support legacy open-ssl by adding the following:
"dev": "export NODE_OPTIONS=--openssl-legacy-provider && webpack --watch --mode=development",
"compile": "export NODE_OPTIONS=--openssl-legacy-provider && webpack --mode=production"

For an example of how this is done in practice, see the sample in the connected function template from the SDK.