Synchronization GE (Tundra)

What it is

The Synchronization Generic Enabler presents a lightweight and generic network-synchronized dynamic scene data model, and two communication protocols to interact with the model: SceneAPI, a RESTful HTTP API for non-realtime querying and modification of the scene, and a WebSocket-based bidirectional protocol for connected Web clients to receive continuous real-time scene updates, and to post their real-time changes to the scene. It includes a server reference implementation based on the realXtend Tundra SDK, and a JavaScript client library. The scene data model is based on a hierarchy of Entities, Components and Attributes. A typical use case would be the implementation of a dynamic multi-user virtual world, but as the data model is completely generic, it is by no means limited to that use case.

The data that is transmitted between the server and the client is based on the Entity-Component-Attribute model as used by realXtend Tundra.


Scenes are identified by their name (ID possible in the future, if wanted/needed). Currently only the first created scene is replicated and the rest of the possible scenes are local. Scene consists of 0 to N Entities.


Entity itself has no data whatsoever and is identified by a unique ID number. Entity can be local (non-replicated) or replicated. Entity can also be temporary (not saved to disk by default when the scene is saved). Entity consists of 0 to N Components.


Components can be added to any Entity in the scene. The components define the functionality/behavior of the Entity. Component (Entity-Component, EC) consists of 0 to N Attributes. Component can be local or replicated.


A Component consists of Attributes. Each attribute has an ID (string) and a type. Once this structure is defined it can automatically be synchronized over the network, whatever the structure may be, without doing any networking code / message definitions to the components implementation. For more on the network synchronization refer to the realXtend Tundra protocol.

Why get it

Instead of having to implement a custom data synchronization solution for a networked Web application, utilizing the Synchronization GE gives a ready-made synchronization solution. The WebSocket protocol is appropriate for receiving low-latency, real-time updates, such as the movement of objects in a virtual world. In cases where real-time updates are not needed, an external service can use the SceneAPI and standard HTTP requests without having to rely on a custom network protocol.

Avaliable for:


FIWARE Webpage



Synchronization Documentation


Synchronization Download

Fiware Academy

Synchronization GE Courses


Click on the images to enlarge them.