Get Started 2: The Web Computer OS

Converted document

The Web Computer OS: webAppOS

Developers do not access the web computer directly. They do that via a set of services and APIs provided by the web computer OS, webAppOS. Now you can proceed without diving into numerous technical and implementaion detatails. However, if you wish to do so, then refer to (in the order of increasing detalization):
figure webAppOS-screenshot.png

Apps, Engines (Libraries), and Services in webAppOS

Apps

A webAppOS application consists of:

Projects

When client-side part of an webAppOS app has been delivered to the web browser, it can initialize a web memory instance (or a slot). Either a new empty slot (without any data in the web memory) can be occupied, or a slot with some predefined data can be created from a template. After an app manipulates web memory, its state is saved into a project, which can later be reopened. A project is a zipped folder containing a web memory dump plus some additional app-specific files.

Engines

Certain actions can be factored out into libraries called engines (analogs of DLLs or shared libraries), which can be re-used by different apps. Platform-specific aspects can also be factored out into engines. In this case, the engine will have multiple platform-specific implementations, which all contain a similar set of web calls actions (the target environment will enforce a particular implementation).
To support pure model transformation languages that are unable to make web calls, webAppOS provides the ability to invoke actions by creating a link in the model.

Services

Besides applications, there are also services. A webAppOS service is a module that provides useful functionality to applications but is invisible to end users. Services can be implemented as Java servlets, as client-side JavaScript code, non-HTTP services, etc. Service adapters are used for different service types (refer to the service.properties file format, where the service_type property is defined).

← Previous | Next →