Infrastructure

This page covers supporting infrastructure and external services that power Decentraland.

External Services (SaaS)

LiveKit

Purpose: High-quality media server for voice and video

LiveKit provides:

  • WebRTC media routing

  • Voice chat

  • Video conferencing

  • Screen sharing

  • Spatial audio (in development)

Access Control: Comms Gatekeeper generates time-limited tokens

Used By:

  • Archipelago Workers - Default voice

  • Worlds - Per-world voice channels

  • Events - Event-specific channels

SendGrid

Purpose: Email delivery service

Sends notification emails:

  • Friend requests

  • Event reminders

  • System notifications

Triggered By: Notifications system


Blockchain Indexers

Multiple indexing services provide fast blockchain queries:

Squids

Purpose: Custom blockchain indexer

Subsquid based indexers:

  • Custom data models

  • Fast sync times

  • GraphQL API

Indexes:

  • Land parcels (LAND NFTs)

  • Wearables and collections

  • Marketplace activity

  • ENS names

Satsuma

Purpose: Hosted GraphQL provider

Managed subgraph hosting:

  • High availability

  • Auto-scaling

  • Monitoring included

The Graph

Purpose: Decentralized indexing protocol

The Graph network:

  • Decentralized indexers

  • Query fees in GRT

  • Community-operated


Message Broker

NATS

Purpose: Pub/sub message routing

NATS provides:

  • Real-time message delivery

  • Pub/sub patterns

  • Request/reply patterns

  • Clustering support

Used By:

Service
Purpose

Archipelago

Position updates

Social Service

Friend status

Worlds

World events


Media Processing

Image Conversion Service (Metamorph)

Purpose: Image format conversion and optimization

Converts images between formats:

  • WebP optimization

  • Thumbnail generation

  • Format conversion

GitHub: metamorph

Profile Images System

Purpose: Avatar thumbnail generation

Generates avatar preview images:

  • Face shots

  • Full body shots

  • Multiple resolutions

Components:

  • Profile Images Consumer - Renders avatars

  • Profile Producer - Listens for avatar changes


Asset Processing Workers

Asset Bundle Converter

Purpose: Platform-specific asset optimization

Converts deployed assets to optimized bundles for all platforms.

Registers bundles in: Asset Bundle Registry

LODs Generator

Purpose: Level of detail variants

Generates lower-poly versions of 3D models for better performance.


Rewards System

Rewards API

Purpose: NFT reward distribution

Grants NFT rewards for actions:

  • Onboarding completion

  • Event participation

  • Referrals


Next Steps

Last updated