WorldKit

The developer toolchain for building, testing, and deploying worlds.

What is WorldKit?

WorldKit is the umbrella name for Five Squared's developer tools. It includes a visual world builder, a server runtime (WorldOS), a real-time sync service (WorldSync), starter templates (Git Worlds), editor plugins, and adapters for connecting external applications.

Each piece works independently — use WorldOS without the builder, or WorldSync without WorldOS. Together they form a complete authoring and deployment pipeline.

World Builder

Visual editor for VEML worlds — place entities, edit properties, preview in real time.

WorldOS

Modular server runtime with plugin architecture and MQTT message bus.

WorldSync

Real-time state synchronization for multiplayer worlds.

Git Worlds

Forkable world templates — clone, customize, deploy.

Plugins & Connectors

VS Code extension, Blender exporter, and adapters for external apps.

WorldOS

A modular server runtime that manages execution and coordination between applications inside and across worlds.

Architecture

WorldOS uses a six-tier plugin hierarchy built on an MQTT message bus. Plugins communicate via topics — no direct dependencies between them. The runtime manages lifecycle, configuration, and inter-plugin messaging.

  1. Service Registry — plugin discovery and lifecycle
  2. Core Services — MQTT bus, config, logging
  3. Platform Services — persistence, auth, scheduling
  4. Domain Services — entity management, spatial indexing
  5. Integration Services — external adapters (ROS2, game engines)
  6. Application Services — end-user plugin logic

Core Plugins

Entity Manager

CRUD operations for world entities with spatial awareness.

World Persistence

Save and load world state. Supports file and database backends.

Session Manager

Tracks connected clients, manages presence and ownership.

ROS2 Bridge

Bidirectional adapter between MQTT topics and ROS2 nodes.

Quick Start

# Clone and run WorldOS
git clone https://github.com/Five-Squared-Interactive/WorldOS.git
cd WorldOS
npm install
npm start

# The MQTT bus starts on port 1883
# Plugin API available on port 3000

WorldSync

Real-time state synchronization for multiplayer worlds over MQTT.

How It Works

WorldSync uses MQTT publish/subscribe to replicate entity state across connected clients in real time. It handles position tracking, property changes, entity ownership, and transform interpolation.

To make an entity multiplayer in VEML, add a <synchronizer> child element pointing to a sync address. WorldSync handles the rest — no networking code required.

The topic hierarchy follows: worldsync/{sessionId}/{entityId}/{property}. Transport runs over MQTT and WebSocket. WorldSync can run standalone or as a WorldOS plugin.

VEML Example

<entity xsi:type="cubemesh"
  tag="shared-block">
  <transform xsi:type="scaletransform">
    <position x="0" y="1" z="0" />
    <rotation x="0" y="0" z="0" w="1" />
    <scale x="1" y="1" z="1" />
  </transform>
  <synchronizer>main</synchronizer>
</entity>

Topic Structure

worldsync/{sessionId}/{entityId}/position
worldsync/{sessionId}/{entityId}/rotation
worldsync/{sessionId}/{entityId}/scale
worldsync/{sessionId}/{entityId}/visibility
worldsync/user/position

World Builder

A visual editor for creating and editing VEML worlds.

WorldKit World Builder is a desktop application (Electron + React + Three.js) that provides a visual environment for placing entities, editing properties, and previewing worlds in real time.

It reads and writes standard VEML files — the same format served to world browsers. No lock-in to a proprietary project format.

  • Drag-and-drop entity placement
  • Property inspector with live preview
  • VEML source view with syntax highlighting (coming soon)
  • Asset import (glTF, images, scripts)

Features

Visual Entity Placement

Drag-and-drop 3D objects into your scene with transform gizmos.

Live Preview

See changes in real time as you edit properties and transforms.

VEML Source ViewComing soon

Switch between visual and code editing — both stay in sync.

Plugins & Connectors

Editor extensions and adapters that connect external tools to the Web Wide Worlds ecosystem.

Editor Plugins

VS Code Extension

VEML syntax highlighting, autocomplete, and validation in VS Code.

Blender Plugin

Export scenes directly to VEML format from Blender.

View on GitHub

Connectors

CS2LinkComing soon

Bridges Cities: Skylines 2 data into a synchronized world.

MinecraftLinkComing soon

Mirrors Minecraft world chunks into VEML mesh entities.

Git Worlds

Template repositories for common world types. Fork one, customize it, and deploy — version-controlled with standard Git workflows.

  • Fork a template on GitHub
  • Edit world.veml in any text editor
  • Push to main — GitHub Actions deploys to Pages
  • Visit your world at username.github.io/repo
# 1. Use the template on GitHub
# 2. Enable GitHub Pages (source: GitHub Actions)
# 3. Edit world.veml
# 4. Push

git add -A
git commit -m "My first world"
git push