STLNCHR

Robinhood Chain · chain 4663

Packs of tokenized stocks, as a pair asset

A pack is an ERC-20 holding 2 to 6 tokenized stocks in a fixed order. LNCHR is the layer that mints, prices and registers them, so a launchpad can pair its tokens against real equity instead of against another volatile token.

Why pair against one

A token paired against a pack is quoted in something with its own floor and its own deep market. The launch does not need a liquidity provider for the quote side, the quote does not go to zero when sentiment turns, and the creator ends up earning fees denominated in stocks.

Priced by what it holds

Buying a pack buys the stocks inside it on their own markets and mints you the pack. Selling burns it and sells them. There is no reserve to bid up, so a pack is never at a premium or a discount to the things it holds.

Tradable the moment it exists

Pack pools hold no reserves and accept no liquidity. Nobody has to seed anything, and depth is whatever the underlying stock markets have — tens of millions, not whatever a launch happened to attract.

Shared, not per-app

A pack lives at one address for everyone. Register it on any app and every other app can pair against it immediately, with the same holders, the same history and the same chart.

Redeemable

A holder can call redeem on the vault and take the underlying stocks out, pro rata, without asking anyone. That also carries dividends and corporate actions through to holders.

Identity is the ordered list

A pack is defined by its stocks in order. The list is the CREATE2 salt, so the address is knowable before registration and the same list can never exist twice. Apple · Meta · Nvidia and Nvidia · Meta · Apple are two different packs, and both are allowed. The ticker is the first letter of each symbol in order, which means tickers collide by design — the address is the identity, never the ticker.

Three lines to a pack

typescript
import { lnchr } from "@lnchr/sdk";

const sdk = lnchr();
const stocks = await sdk.getStocks();
const packs = await sdk.getPacks();

Registration is permissionless and costs network gas only. Reads go through one lens contract, trades through one router. Start at Integrate, or hand an agent llms-full.txt and let it read the whole thing in one fetch.