Skip to content

Sharkhex Spaces

Documentation

Everything to install, run and extend Sharkhex Spaces.

Getting started

  • Self-hosting

    A client installs the product on a server of their own from one release archive, natively or in Docker, and upgrades it from the next one.

  • Licensing

    What a license key is, how an install activates it, how to move it to another server, and what happens when a check fails.

  • Configuration

    Every setting comes from an environment variable, and an empty variable counts as unset. A secret can instead be read from a file: set <NAME>_FILE to its path.

  • Operations

    How vws runs against its database and how a running process reports its state. Configuration variables are listed in Configuration.

Administration

  • Central admin

    A multi-tenant platform (VWS_TENANCY=multi) has a central admin above its tenants, where its operators create, suspend and delete tenants, define plans and give them to tenants, invite their first admins, manage the identity providers every tenant may offer, and read the platform's health and log.

  • Tenancy

    The host of a request selects its tenant.

  • Identity

    The product is the OAuth 2.0 authorization server for its own clients: the web client and the iOS and Android apps.

  • Languages

    The client speaks English (en-US, the base), German (de-DE) and Arabic (ar-SA), which reads from right to left.

Maps and content

  • Map format

    A map is a Tiled document plus a layout of our own. The Tiled document draws the map: tiles, layers, collisions and text.

  • Avatars

    An avatar is a stack of sprite sheets, one per part, that the client draws over each other at the player's position.

  • Entities

    An entity is an object placed on a map, such as a desk, a plant or a screen.

Developers

  • Scripting API

    Map scripts and the pages a map allows talk to the room through one global, world, version 1. This document is its specification.

  • Extensions

    This is how tenants extend the product. Modules and calendars and tasks are built.

  • Partner API and webhooks

    A tenant's own systems, such as its intranet, booking tool or CRM, work with its worlds through the partner API, and hear what happens in them through webhooks.

  • HTTP API

    The HTTP API of the web client, the mobile apps and the administration: versions, errors, pagination, idempotency and the resources.

Found a mistake? Tell us.