App Builder CosmoApps
The design of the application model is carried out in the online constructor, in which the data structure is designed and the behavior of standard interface elements is configured, without the need for programming - noCode / low-Code, or with minimal programming (formulas or calculated values are JavaScript expressions by default).
App builder View

The standard interface is configured according to the principle of "disabling unnecessary", i.e. initially, for all application objects, there is an implemented I / O interface that does not need to be specially implemented, but access to some (or all) functions of which can be restricted if the developer wishes
Ускорение разработки приложения без потери гибкости
Конструктор разработки приложений упрощает разработку множества стандартных функций приложения, а также структурирует приложение в визуальной и понятной форме, что позволяет с легкостью обслуживать приложение персоналу, не имевшему отношения к егоВсе, что не предусмотрено платформой, может быть реализовано на языке JavaScript ничуть не сложнее, чем в любом другом веб-приложении HTML-5 + JavaScript – приложение может быть дополнено view (экранами) произвольной формы, разработанными по несложным правилам.Все, что не предусмотрено платформой, может быть реализовано на языке JavaScript ничуть не сложнее, чем в любом другом веб-приложении HTML-5 + JavaScript – приложение может быть дополнено view (экранами) произвольной формы, разработанными по несложным правилам.
Adaptive design
The platform supports an automatic adaptive input-output interface for the developed application.
The interface works correctly on devices with different screen resolutions - from large computer monitors to mobile phones.
The application can be developed by both an advanced user (a simple level or a prototype) and an experienced programmer (any features inherent in a web application can be used in addition to the standard features).

Пример фрагмента кода приложения на JavaScript
{
"Name": "Diary",
"_type": "_Project",
"_archive": false,
"objects": [
{
"id": "44640e96-82a2-43c2-05ca-2282a7818be4",
"type": "_Type",
"BaseType": "object",
"Browsable": true,
"Cacheable": false,
"IsRoot": false,
"Properties": [
{
"id": "6e31105e-9b3e-eea7-eca1-cd786745993f",
"Type": "string",
"Browsable": true,
"Required": true,
"Many": false,
"VisibleInList": true,
"VisibleInDetail": true,
"VisibleInLookup": false,
"Aggregation": "Value",
"Index": 5,
"Rules": [],
Minimum code
All the main I/O and reporting functions in the application are unified and almost do not require writing code, they only require configuration in the designer, which significantly shortens the application development and testing cycle, since 90% of the code has already been developed and tested and reused. This reduces the number of errors during development by an order of magnitude and the time for their search and correction, radically reduces the cost of the project for the user. The constructor interface allows you to edit objects with complex relationships between them, usually without any programming of the logic of forms and lists, except perhaps for default values and formulas, which are JavaScript expressions

For example, you can write a formula for a display field that includes multiple fields. As a rule, such fields are the names of documents: title + date + number, Act + date + number, full name + full name + o, and more complex ones including the current state of the document.

An example of setting the substitution of the displayed person's full name collected from three fields

An example of data substitution from another data type - Region, which has a Hibrid relationship type
Modularity
The application has a modular structure. Each module can itself be an application, in turn built using other modules. Modules can be either standard or developed by other users.
Individual modules can be, for example, employees, locations, orders, warehouses, firms, people, geography, security, etc.
When designing a data model, an object-oriented approach is used, including the possibility of inheritance between data types, which significantly reduces the cost of designing complex applications.

Applications for all platforms

You can create cross-platform mobile applications using PhoneGap or Google Power Apps and other similar systems. Using JavaScript in your application on both the client and server allows you to share common client-side code and application APIs.