Outline of Nexacro
Nexacro is a software development platform that enables you to write just one set of source code to design, develop and deploy an application applicable to various environments including the Web, mobile devices and non-mobile devices. Using the platform, you can develop an enterprise application running on a web browser for a certain task. If you need the connection with a certain peripheral in Windows, you can easily transform the application into a Windows app and deploy it just by adding a relevant adapter. With just one single versatile tool applied to the entire course from development to deployment, you can respond to differing running environments and various requests from users.
Main features of Nexacro
Development tool (IDE): Nexacro Studio is a development tool that is easy to use for beginner developers thanks to its intuitive editing feature. The tool provides integrated development environment where you can design screens, write code, perform debugging and deploy applications in a continuous process.
Framework: Unified.js is Nexacro's own JavaScript framework, which is applicable to all operating environments. Developers need to write just a single set of source code without having to consider characteristics of each operating system.
Runtime Environment: Nexacro-based mobile and desktop apps run on the Nexacro runtime environment (NRE). The NRE consists of a unique render engine and script engine, both developed based on open-source software. The optimal running environment can deal with the massive volume of data and render complicated screens faster than web browsers. Moreover, it provides the connections with APIs offered by various OSes as well as the connections with peripherals.
Web technologies are being standardized more and more, and most of the technologies that used to be implemented using plug-ins are now supported simply by the Web. However, the gap between web technologies and market demand is widening in this era of the fourth industrial revolution as the Web is lagging behind the pace of the technological development in other sectors. The Web has many limitations so that it cannot utilize information collected by devices. Furthermore, it also cannot extend the functionalities of existing services by connecting them with various types of IoT devices. As the concept of a hybrid app emerged to overcome the limitations of the Web, it falls short of responding to diverse operating systems. To provide system that can fit all the environments of users, companies need developers and tools specializing in each environment.
Nexacro uses its own operating environment to secure maximum speed. Moreover, the dedicated framework sets developers free from the struggle caused by the difference in operating systems. Developers do not need to learn programming languages other than JavaScript to build screens, control device APIs and devise algorithms. For the data types, peripherals and IoT devices that are not supported by Nexacro, you can develop separate modules or adapters by using third-party products. You can extend functionalities simply by installing such a module on a project.
Nexacro does not require a separate server for rendering screens. You can manage web, mobile and desktop applications all together just by using Nexacro Studio to create necessary files and uploading the created files onto the existing web server. You just need to add relevant libraries to a server to support the data transactions with back end system or to use push message system. In this way, you can use an existing server framework.
Programming language
Nexacro programming is divided into two parts - one to define user-visible screens visible and a second used for the scripts that implement business logic. Additionally, Nexacro provides capabilities for applying and managing styles and themes in screens.
Form (screen) definition language (FDL) is XML-based and describes information such as each component’s properties, binding, and events. FDL is used to describe the multiple layouts created using the Adaptive Visual Editor. Lastly, FDL includes a separate file structure that documents environment information needed to run apps.
The following table identifies files created when developing apps using Nexacro (note that these are all development-time files that are not necessarily included in the app at run-time):
Item | File Name (extension) | Included elements |
---|---|---|
Project | *.xprj | • Information on a project • Paths of Environment files • Paths of TypeDefinition files • Paths of AppVariables files • Paths of Application Information files |
Environment | environment.xml | • Information on an operating environment • theme id • Screen information (Specified property values in the screen information can override their counterparts in the environment information.) • variables • cookies |
TypeDefinition | typedefinition.xml | • Modules • Components • Services • Protocols • Update |
InitValue | *.xiv | • Initial property values set for components or other objects |
Application Information | *.xadl | • Information on an application • screen id • Frame-related properties |
AppVariables | appvariables.xml | • Global variables within an application |
Form | *.xfdl | • Form layouts • Form-related properties • Component-related properties • Added layouts • Scripts |
An InitValue file exists only when users create a file in Nexacro Studio.
The default themes are not included in a particular project. However, their copies can be created in the theme folder of a certain project.
As part of the build process, code written in Nexacro Studio will be converted to JavaScript. At run-time, it is the JavaScript code that will run.
Development Environment
Nexacro includes Nexacro Studio, Nexacro's integrated development environment (IDE), which includes a WYSIWYG interface. You can develop apps on Nexacro Studio without being concerned about the operating environment. Code created will be saved in Nexacro formats and languages.
Although Nexacro Studio runs only on Microsoft Windows, apps developed using Studio may be run under any operating system or device with a web browser that supports HTML5.
With the App Builder, you can create and deploy an app that is compatible with iOS/iPadOS, macOS or Android by adjusting settings simply.
You can also create and deploy an app in each operating environment without using the App Builder.
Depending on operating environments, you may need to perform additional work using different development tools and separate authentication. For example, you may need an XCode environment to deploy an iOS/iPadOS-compatible app.
Implementation Environment
Nexacro runs apps through the Nexacro Framework and provides an optimized structure for each supported operating environment.
To begin, implementation environments are divided into the desktop and mobile environments. Another categorization is based on operating mechanisms—Nexacro runtime environment (NRE) and web runtime environment (WRE). Apps can use additional features depending the latter categorization. In the Android and iOS/iPadOS NRE, for example, apps can use camera, address book, SMS and other features that are provided by mobile devices.
The below table summarizes the implementation environments for Nexacro.
Nexacro | |||
---|---|---|---|
Desktop | |||
WRE | Supports web browsers that can run on various operating systems - IE8, IE9, IE10, IE11, Edge, Chrome, Safari, Firefox, Opera | ||
NRE | Apps run on the bundled platforms. Offers features that cannot be provided by web browsers - Windows runtime and macOS runtime | ||
Mobile | |||
WRE | Supports basic mobile browsers that can run on various devices - Android, iOS/iPadOS | ||
NRE | Apps run on their own individual environments. Device APIs are applicable. - Android runtime, iOS/iPadOS runtime, Windows runtime (tablet) |
Deployment Environment
Deployment refers to the tasks required to install an app and the resources on which it depends. Depending on the user's environment and app, you may need to download apps and modules developed using Nexacro and install them on the user's device (whether mobile, laptop or desktop).
Nexacro-based apps run on client machines that the user will work on. The apps may need to communicate with a web application server (WAS) for tasks such as data processing, which can be performed by using the X-API module. Where real-time data must be processed on the client machine, an additional module, X-Push, may be used.
For basic deployment tasks, HTTP is the simplest protocol to use. In environments where Internet access is unavailable, you may need a separate medium to distribute resources and apps.
The support environment for an application varies according to the version of X-PUSH.
The web environment is supported by the version 2.6.X or later.
The mobile NRE is supported by the version 2.5.X or later.
When you use a theme provided by Nexacro Studio, a theme file is converted from the basic theme.