CS2 Reservestrategy
Buy $CS2RS
Docs

Data

Prices and item metadata come from Steam. The reserve account is read live once it is connected.

What is live

DataSource
Prices, median sale, 24h volumeSteam Community Market, refreshed every 30 minutes, last-known values as a fallback.
Item type, rarity, description, series, contentsScraped from each item's Steam market page into lib/catalog.json.
Item and skin artSteam economy CDN, stored in public/.
The reserve inventory and its snapshot hashThe account's public Steam inventory, once RESERVE_STEAM_ID is set. Sample figures until then.
Sweeps, fees, war chestSample data until the Pons fee feed is connected.
Robinhood Chain transactionsNot written yet. The site shows the hash it would write.

How Steam is read

Everything goes through lib/steam.ts on the server. Each read uses the Next.js fetch cache with a revalidate window, so Steam sees at most one request per item per window no matter how many people load the page. Price reads run one after another rather than in a burst, because Steam rate-limits by address, and every read falls back to the last value stored in the repo if Steam says no.

lib/steam.ts
getPrice(name)      // lowest, median, 24h volume, live flag
getPrices(names)     // the same, sequentially
getInventory()      // items grouped by name, total, SHA-256 of the holdings
CATALOG              // metadata for every container the site knows

Connecting the reserve account

  1. Create the Steam account that will hold the cases and set its inventory to public.
  2. Find its 64-bit id (it starts with 7656) and set RESERVE_STEAM_ID in the deployment environment.
  3. Redeploy. The vault, proof and rank pages switch from sample figures to the live inventory, and the snapshot hash on the proof page becomes the real one.
What the hash covers

The snapshot hash is SHA-256 over the item names, their counts, the total and the account id, in a fixed order. Prices and times are left out so the hash only changes when the holdings change.

The files

lib/
steam.ts       // server reads: prices, inventory, catalog
catalog.json   // scraped metadata for 11 containers
prices.json    // last-known prices, the fallback
contents.json  // the CS20 Case contents and their grades
market.json    // listing counts captured on 17 Sep 2026
reserve.ts     // sample reserve figures, ranks, formatters