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:
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
Review Backend Services for service specifications
Check Catalyst Network for content infrastructure
See Architecture Overview for the complete picture
Last updated