Skip to main content

Advanced Documentation

This section is for platform developers: people who need to understand how SIMPLE works internally, build it from source, release new versions, or contribute code.

If you are setting up a classroom session, see the Operator Guide. If you are building a new Virtual Universe (GAML model + Unity scene), see the Developer Guide.


What is covered here

WebPlatform internals

Deep technical reference for the simple.webplatform session server:

PageWhen to read it
ArchitectureYou need to understand how the backend modules connect, or how data flows from GAMA to headsets
WebSocket APIYou are implementing a custom client (non-Unity headset, custom monitor, test harness)
Backend ModulesYou are modifying or extending a specific backend module
Frontend ComponentsYou are modifying the admin UI React app
ADB Headset ManagementYou need to understand or modify headset provisioning, the scrcpy pipeline, or the video WebSocket protocol
PackagingYou need to produce a self-contained executable for deployment

Environment variable reference is in the main docs: .env Reference.

Developer guide

Covers all three repositories — simple.webplatform, simple.toolchain (GAMA plugin + Unity template), and this documentation site:

PageWhen to read it
Repository StructureYou are orienting yourself: which repo has what, where to clone
Building from SourceYou need to build the GAMA plugin or Unity template from source
ContributingYou want to submit a patch or understand code conventions

Companion apps

Android apps automatically installed on Meta Quest headsets by the WebPlatform:

PageWhen to read it
Oculus Wireless ADBYou need to understand what this third-party GUI app does and why it's installed
ADB Auto-EnableYou are modifying or rebuilding the ADB watchdog service