Skip to content

decentraland/archipelago-workers

Repository files navigation

Archipelago Service

Coverage Status

The Archipelago worker is a bundle of services designed to support a standalone realm in Decentraland. It consists of a core service that implements the established clustering logic to group users into islands based on their in-world positions. Additionally, the ws-connector service provides a WebSocket connection, exposed to Decentraland clients through the Realm Provider. A stats service is also included, aggregating information about islands and peers, making it available for consumption.

Getting Started

Dependencies

  • Node >= v16
  • NATS running instance.
    • NATS_URL environment variable must be set. Eg: NATS_URL=localhost:4222

Installation

Install Node dependencies:

yarn install

Usage

Build and start the project:

yarn build
yarn start:local

Test

Run unit and integration tests:

yarn test

NATS messages:

  • peer.${address}.heartbeat
  • peer.${address}.disconnect
  • engine.peer.${address}.island_changed
  • engine.discovery
  • engine.islands