HELIX Docs
Platform API

Memory Store

Volatile, low-latency storage shared across all instances of a world. TTL-required. Great for leaderboards, matchmaking, and hot counters — never the source of truth.

Planned API, not in the shipped Web SDK

Memory Store (Helix.memoryStore) is part of the designed Platform API contract but is not in @hypersoniclabs/helix-sdk today, so the signatures below are a specification, not something you can call. The shipped surface is listed in the Web SDK overview.

Helix.memoryStore is HELIX's volatile store: fast, shared across every running instance of your world, and always expiring. It's for live state that's cheap to lose. If you know Roblox, this is MemoryStore.

What to use today

Data Store (durable storage) is live. Ranked boards ship as Helix.leaderboard (submit, top) and queueing as Helix.matchmaking (enqueue, cancel, status, onMatch). For a hot counter, keep it in the room's state and flush it, or have the game server use the Data Store increment route.

Never the source of truth

Every Memory Store entry requires a TTL and may vanish when it expires or under pressure. It has no economic authority — it cannot grant items or LIX. For anything that must survive, write to Data Store.

API

Prop

Type

Live leaderboard example

// record a score (atomic, ranked, shared across instances)
const board = Helix.memoryStore.sortedMap('round-scores');
await board.set(playerId, score, 300); // 5-minute TTL

// read the top 10
const top = await board.getRange({ limit: 10, descending: true });

Hot counter example

// count concurrent players in a zone without hammering Data Store
const inZone = await Helix.memoryStore.increment(`zone:${zoneId}`, 1, 60);

When to use which

NeedUse
Player progress, settings, owned stateData Store
Live leaderboard for a roundHelix.leaderboard today; Memory Store sortedMap (planned)
Matchmaking / cross-instance handoffHelix.matchmaking today; Memory Store queue (planned)
Hot counter (players in a zone)room state today; Memory Store increment (planned)
Anything you'd be upset to loseData Store

Reference

On this page