IONDV. Studio

IONDV. Studio is the IONDV. Framework application. It can be used as standalone node.js application or as the desktop application. The IONDV. Studio can be deployed with the use of the studio demo version. Registration and account are not required.

Description

IONDV. Studio is an application for visual development and editing metadata (such as classes, navigation, views, workflows, portal forms), which are deployed as an IONDV.Framework web application.

How to launch application in the Studio

Watch video on how to deploy the application from the repositry in the IONDV. Studio.

  • Choose a ready-made application on github. For example, Nutrition-Tickets.
  • Download the zip file and open it in the Studio application.
  • Click the play button in the upper right corner of the screen to launch the application.
  • The application will start deploying. It takes around 80 seconds.
  • Get the link to the application and click it.
  • Login to the application using demo as the login and ion-demo as the password.

The application is running! The application in the demo Studio is stored for 1 hour, you get to know the technologie and try to make your own changes to the structure of the application and see the result. After 1 hour the application will be removed from the server.

How to create an application in the Studio

В Студии также можно создавать приложения. Смотрите видео о создании простого приложения IONDV. Nutrition-tickets в IONDV. Studio. Инструкция доступна в репозитории IONDV. Nutrition-Tickets.

  • Press + to start creating an application. Fill out the required fields in the popped-up window. The tab for the application you created will appear in the left upper corner of the screen and can be managed as a browser tab.
  • The side menu will appear, which is the application work panel. The Classes section is for creating Classes and Attributes.
  • Start creating an application with a Class. Click on the Class and in the work space click +Class.
  • Now we’ve got the Class and the Attribute ID is automatically created.
  • When the Class is selected, you can add its Attributes by clicking on +Attribute. Attribute properties and types description here.
  • When you’ve created at least the 2 Classes you can set up the connections between them. It can be made through the data type setting when creating Class attribute. Main types are the Collection and Reference. The specified type of data of the Attribute will be shown in the workspace as a linking line.

The created Classes and their Attributes will appear in the Class section. It is called the project tree, which will make it easy to navigate the project when the amount of Classes will get bigger. These are the basic things about creating an application.

Application in the IONDV.Studio

To develop an application in the Studio, first launch it using one of the following methods:

  • Use the demo of the Studio.
  • Launch locally as the IONDV. Framework application with the source code from github. After that build and deploy the application according to the instruction for the Framework applications.
  • Open in the browser by the link http://localhost:8888.
  • Launch locally as a standalone node.js application according to the instruction below.
  • Launch as a desktop application according to the instruction below.
  • Launch in docker-container using command docker run -d -p 8888:8888 –name studio iondv/studio.

Open in the browser by the link http://localhost:8888.

Then:

  • Develop your application in the Studio by creating classes and navigation.
  • Note that the data is stored in the local reporitory of the browser. Export the application as zip.
  • Download the latest version of the IONDV. Framework and the IONDV. Registry module from GitHub repositories Framework and Registry.
  • Follow the standard instruction on deploying the application by git, excluding the application. Instead of the application deploy your zip file in the applications folder.
  • Then build and deploy the application according to the instruction IONDV. Framework.

Ways to use the Studio

Standalone node.js application

The advantage of using the standalone application is no need of the database and the IONDV. Framework.

  • Run the command git clone https://github.com/iondv/studio.git. Change the local directory to studio.
  • Execute the command npm install to install all necessary dependencies, including the local application for building gulp.
  • Please, make sure that you have the Gulp of version`4.0` globally installed.
  • Execute the command gulp build to build the application.
  • Launch the application using the command npm start or node www`(use `node standalone to launch the application as [standalone](/readme-standalone_ru.md).)
  • In the browser go to the http://localhost:8888.

The Desktop application of the Studio (node-webkit)

Before forming the desktop application of the Studio, build Standalone node.js application

Launch new studio at the node-webkit local server

  1. Download the latest NORMAL version the node-webkit from the website https://nwjs.io/.
  2. Unpack the archive contents into a convenient folder.
  3. Use one of the available methods to connect the application and the node-webkit.

The examples are described in the article https://github.com/nwjs/nw.js/wiki/How-to-package-and-distribute-your-apps in the 2a and 2b sections.

A more convenient option is to use the package nw-builder:https://github.com/nwjs-community/nw-builder. Example of command: nwbuild ./studio -p win64 -v 0.34.0 -o ./destination. It’s worth noting that nw-builder will itself download the required node-webkit version.

As a result, you’ll get your application in the folder with dll files that nwjs uses. Launch the application using the nw.exe file (the name may differ).

Formation of a single executable file

  1. Download Enigma virtual box from the website https://enigmaprotector.com/en/downloads.html, install and run
  2. Enter the path to the executable file of your application in the first field. (Choose)
  3. Enter the path to save the executable file in the second field.
  4. Enter ALL files and folders from your application directory except the executable file .exe in the field Files.
  5. In the Files options menu, check Compress.
  6. Click Process and wait for the results.

External App Tracker

All settings in deploy.json -> globals -> externalAppTracker

{
  "items": [{
    "name": "dnt",
    "title": "Develop and test",
    "url": "https://github.com/iondv/develop-and-test/archive/master.zip"
  }, {
    "name": "crm-en",
    "title": "CRM EN",
    "url": "https://github.com/iondv/crm-en/archive/master.zip",
    "language": "en"
  }, {
    "name": "crm-ru",
    "title": "CRM RU",
    "url": "https://github.com/iondv/crm-ru/archive/master.zip",
    "language": "ru"
  }],
  "front": "/themes/portal/static/archives/",
  "storage": "applications/studio/themes/portal/static/archives/",
  "tempZip": "applications/studio/temp.zip",
  "enableUpdate": false,
  "updateInterval": 86400
}
  • item.name - sets the file name when saving the archive
  • item.title - is displayed on the client when the application is selected
  • item.url - remote address of the application archive
  • item.front - address of the archive for the client, if not specified, it is created according to the general setting and the name
  • item.language - if not specified the application will be displayed in any language
  • storage - the place to store the applications archives
  • front - link to the archives from the client
  • tempzip - temporary file for remote download from another server
  • enableUpdate - turn on/off the synchronization with a remote server. When starting the server, the presence of the archives is checked, and if not found, then they are downloaded from the specified URL. After the updateInterval is expired the archives are updated
  • updateInterval - the period of re-uploading the archive to the server (seconds)

You may specify the custom URL on the client, but take into consideration that the browser only allows the explicitly permitted Access-Control-Allow-Origin downloads from other hosts

Read the original instruction on the website https://github.com/nwjs/nw.js/wiki/How-to-package-and-distribute-your-apps in the section An alternative way to make an executable file in Windows