Deploying Jive SDK Node.JS Solutions with JXcore

Version 1

    Jive SDK for node.js is the original SDK for Jive add-on development. Building on node.js’ asynchronous nature, this SDK makes an excellent choice for developing middleware solutions, such as Jive add-ons, capable of achieving massive enterprise performance at scale.

     

    JXcore is a node.js distribution with additional features developed and maintained by Nubisa. Most important features of JXcore seperating it from any other solutions are:

    • Support for multiple JavaScript engines. Official node.js distribution is based on Google’s V8 JavaScript engine. JXcore can work with V8 as well as Mozilla’s SpiderMonkey JavaScript engine. This gives developers a freedom to choose preferred JavaScript engine in their application.
    • Mobile support. Because it supports SpiderMonkey, JXcore based applications can be deployed on iOS devices. Hence it can be used to build multiplatform mobile applications
    • Packaging. JXcore includes a unique capability to turn a complete Node project into a single binary that can be deployed on target devices.

     

    This tutorial covers JXcore's packaging features to demonstrate distributing a Jive SDK powered node.js application.

     

    There are also number of features in JXcore that helps developers in developing Jive add-ons:

    • Built-in process monitoring
    • Built-in memory store, sqlite db, and leveldown db

     

    Now, let’s get started with building your first Jive add-on. First step is to install JXcore on your system. Visit jxcore.com/downloads to install the latest JXcore on your system. For full node.js native module compatibility, you are advised to use V8 version for your operating system.

     

    Once you have JXcore installed, open a terminal / console screen. Browse into a folder where you can create a new folder.

     

    Let’s create our test folder:

    mkdir jive-test

    cd jive-test

     

    We need jive-sdk is installed in order to create the application templates easily.

     

    For Windows:

    jx install jive-sdk -g

     

    For other operating systems:

    sudo jx install jive-sdk -g

     

    Once npm installs the jive-sdk cli, you can try it with the following command:

    jive-sdk

     

     

     

     

    The command above will show a list of things the cli can do for you. In this tutorial, we’ll create one of the application templates using this cli.

    jive-sdk create tile-list

     

    Jive-sdk cli will create the files and folders for the tile-list application template. Before packaging or running this application, we need to install the dependencies for this application. Use the command line below to install all dependencies.

     

    For Windows:

    jx install

     

    Other OS:

    sudo jx install

     

    You will be notified that npm has installed all dependencies after running the given command above.

    JXcore's automatic package creator scans all files and folders for the application files. It is important to package this application before running it in order to prevent having installation specific jive-sdk files inside the pacakge.

    In order to package the application enter the command below:

    jx package app.js jive-test-app

     

    Running this command is going to create a JXcore package file (jive-test-app.jxp) and a compiled package (jive-test-app.jx).

    You can now safely move jive-test-app.jx file into another folder and run it there without moving any other files from the current folder:

    mkdir test

    cd test

    Windows

    copy jive-test-app.jx test\

     

    Other OS's

    cp jive-test-app.jx test\

     

    cd test

    jx jive-test-app.jx

     

    If you want to update the application content and re-compile the package use the command below:

    jx compile jive-test-app.jxp

     

    If you need to recreate the project file again, you should use the 'package' command above.

     

    Note that once you run the Jive template application, it creates extension_src folder and extension.zip file. Make sure to delete them before creating the new JXcore package.

    If you have any questions or issues, you can visit our Github pages at https://github.com/jxcore/jxcore/. You can either open a new issue or search the existing ones in case it was already answered.

     

    There are also various support plans available by Nubisa. Simply call (617) 229-6550 or email info@nubisa.com to learn more about support plans.