What Stonkyard is
Stonkyard is a protocol that turns trading fees into yield for the people holding its products.
Every trade on chain pays a fee to somebody. On almost every venue that somebody is the team, and holders get a token and a roadmap. We route it the other way. Fees are split by a contract in the same transaction that earns them, and spent on assets that go straight to holders.
Two products do that today.
The launcher. Coins launched here convert their trading fees into tokenised stock for their holders. Every trade pays —, and — of that is set aside to buy the coin’s reward stock on the open market and credit it to holders pro rata. A coin can pay a single stock or rotate through a basket of them.
Custom pairs. A coin can launch priced against a stock instead of ETH. Its fees then arrive in that stock already, so there is nothing to convert: — goes out to holders in the pair asset itself.
The vaults. A vault is an NFT with a custody account attached. — of every launcher fee, most of what every new vault pays to mint, and every secondary royalty go into a shared pot. When the pot fills, anyone can run a round: it buys one stock and credits every vault the same amount. You collect whenever you want, and the stock waits in its custody account until you do.
Different products, same rule. Revenue arrives, and holders are what it gets spent on.
All of it is on chain
The contracts
Every fee this protocol earns passes through one of these, and all of them are public. Nothing below is a claim you have to take on trust — open any of them and the transactions are the record.
| Contract | Address | What it does |
|---|---|---|
| Liquidity locker | ———— | Holds every graduated coin's Uniswap V3 position. No withdraw function, no owner, no upgrade path; only swap fees can leave, through harvest |
| Vault protocol | 0xa072…30DF | Holds the ETH pot and the shared stock pools, runs rounds and credits every vault |
| Vault NFT | 0xB83E…19F1 | The vault itself: an ERC-721 whose royalty is paid into the pot |
| Launchpad | 0x489F…0029 | The curve for every coin launched here and the router into its Uniswap pool after graduation; takes the curve fee, harvests the pool's |
| Token factory | 0xd94A…c649 | Deploys each coin on behalf of the launchpad |
| Fee router | 0x6Aa7…6886 | Splits every fee the moment it is earned; the split is fixed |
| Reward registry | 0x456C…2DA3 | Which assets a launch may pay in; anyone can register one that passes the audit |
| Dividend vault | Not deployed | Streams the dividend leg in ETH to whoever stakes STONKYARD |
| Buyback | Not deployed | Buys STONKYARD off the market and burns it, from every launch fee |
| Fee splitter | Not deployed | Optional: routes STONKYARD's own Pons fees into the pot and the buyback |
| Price oracle | 0x0809…Eba0 | Chainlink feeds that bound every swap the protocol makes |
| Swap adapter | 0xAa06…EBa6 | Uniswap V3 on Robinhood Chain, the venue every swap goes through |
| Timelock | 0xe48d…EBDF | Owns every contract above. Every change waits here in public first |
| Multisig | 0x6f3E…9aB8 | Proposes and executes timelock operations, and can pause vault mints and rounds |
| STONKYARD token | 0x1170…B40A | The governance token, launched on Pons rather than here |
| Treasury | ———— | Receives the protocol share. The one address a human controls, and it can only be paid, never pay |
Every contract in that table is owned by the timelock. Nobody holds a key that can move the pot or the pools, and every change waits — in public before it can execute. The governance page shows the delay, the operations in the queue, and who can propose. The rotation and the rest of the live state are at the bottom of this page, read from the chain.
Products, not a product
Vaults and the launcher are what we run today. Neither of them is what Stonkyard is.
Nothing on chain stays busy forever. Whatever has volume this month will have less in six, and a protocol built around one product has an expiry date whether it admits it or not. Plenty of them are, and they spend the whole decline saying volume is temporarily soft.
So we did not build it that way. Stonkyard is the machine that turns revenue into holder rewards. A product is just whatever is feeding it at the time. When one slows down we build the next one and plug it into the same router, the same split, and the same contracts. We do not sit and wait for the first one to come back.
The vaults came first and still run, still buying stock every time the pot fills. The launcher came second and is where the volume is now. Whatever is third works the same way, because that part was built to outlast any single product.
That is why the revenue page is the one worth reading. It measures the machine, and the machine is what carries over.
What the token is for
$STONKYARD is our token. It is launched on Pons, not here. It is not a governance badge and it is not a fee discount. It does four things.
Revenue buys it and burns it. A fixed — of every launcher fee goes to a contract that buys $STONKYARD on the open market and burns it. Anyone can trigger the buyback once its balance clears — ETH and — has passed since the last one, and earns — of it for doing so. The buy and the burn happen in one transaction, so a purchase can never sit unburned.
It is what a vault costs. Minting a vault burns — STONKYARD. No purchase, the tokens are just gone. That destroys supply the buybacks never have to, and it costs the protocol nothing, because the person minting paid for it.
Staking it earns ETH. — of every fee is streamed to whoever has staked $STONKYARD in the dividend vault, over —, in proportion to how much is staked and for how long.
Its own trading fees can pay the vaults, and buy itself back. A Pons launch can name a fee recipient. If that is set to our fee splitter, $STONKYARD’s own creator fees are split — vault pot · — buybacks and burns. The pot’s share is spent on stock for vault holders; the other share buys $STONKYARD off the market and burns it. Nothing depends on this being set: it is optional plumbing, and the rest of the protocol runs the same either way.
All of it is on the revenue page, listed separately. Spending revenue and destroying supply are two different claims and they should not be added together.
What a launch is
A launch is a coin on a bonding curve that graduates into a permanently locked Uniswap V3 pool. The curve sells 793,100,000 of the coin’s 1,000,000,000 tokens and raises — doing it. When it sells out, the ETH it raised and the remaining 206,900,000 tokens are minted as a full-range position in the coin’s pool (the 1% fee tier), at the price the curve ended on. The position belongs to the liquidity locker, a contract with no function that removes liquidity, no owner and no upgrade path: the liquidity can never be withdrawn, by the creator or by the protocol.
The pool itself exists from the moment of launch, created by the launchpad and priced at the graduation price in advance, and the coin refuses every transfer into it until the curve sells out, so nobody can seed it or trade it early. Trading after graduation still goes through this site’s buy and sell, which route through Uniswap and keep every trade on the coin’s book; swaps made directly on Uniswap are real trades too, they just do not appear there.
The one thing that is set at the moment of creation and can never be changed: where the fees go. Every trade on the curve pays — to the fee router, and the router splits it in the same transaction. After graduation the launchpad takes nothing; the pool’s 1% swap fee accrues to the locked position instead, and anyone can harvest it into the same router and the same split. That routing is what funds everything below.
This cannot be undone
You are the coin’s creator and it is credited to you. What you give up is the fee stream, and what your holders get for it is below. A launch can also carry an image of up to 24,000 bytes, written into the chain itself rather than pinned somewhere that can go missing; we call those coins inscribed.
Where the fees go
Every trade on a launched coin’s curve pays a — fee. The launchpad hands it to the fee router in the same transaction, and the router splits it there and then, so nothing sits unsplit and no worker has to claim it. Once a coin has graduated its trades pay the pool’s 1% LP fee to the locked position instead, and a permissionless harvest collects it: the ETH side goes through the router exactly like a curve fee, the coin side is burned.
| Share | Of each fee | What happens to it |
|---|---|---|
| Holders | — | Buys tokenised stock for everyone holding the coin |
| Vault pot | — | Paid out to Stonkyard vaults on their rounds |
| Buyback | — | Buys STONKYARD off the market and burns it |
| STONKYARD stakers | — | Streamed in ETH to anyone staking STONKYARD |
| Protocol | — | Servers, database, APIs and infrastructure |
Everything below the holders’ share comes out of the protocol’s side, never out of theirs. The buyback and the dividend are funded by the protocol taking less.
A coin paired against a stock earns that stock rather than ETH. Its holders are paid — in the asset the coin already trades against, in kind and in the same transaction. The rest is held by the router until anyone calls convert, which swaps it to ETH at an oracle-bounded price and splits it four ways, because the vault pot holds ETH and the buyback exists to spend it.
The split is not a policy
The five numbers above are constants written into the router when it was deployed. There is no function to change them. This page reads them from the chain, and so does the revenue page.
The buyback buys and burns in one transaction, bounded by the Chainlink price, so there is no version of it where the ETH is spent and the tokens are not destroyed. Every buy and every burn is recorded as it happens.
What Stonkyard pays its holders
— of every fee is paid to whoever stakes $STONKYARD in the dividend vault. In ETH.
Rather than a snapshot on a clock, every ETH that arrives is streamed over —. A stake earns in proportion to how much is staked and how long it is there, so a balance that shows up for one block around a distribution earns nothing, and one that sits for the whole stream earns its full share.
| How it works | |
|---|---|
| Paid in | ETH, claimable from the vault at any time |
| How often | Continuously. Each inflow streams over — |
| To qualify | Stake STONKYARD. There is no minimum |
| Your share | Your stake as a fraction of everything staked, for as long as it is staked |
| To claim | Press claim on the dividends page, or exit to unstake and claim in one transaction |
Nothing streams into a void
ETH that streams while nobody is staked is carried into the next stream instead of being lost. Staking is the only eligibility rule: there is no minimum balance and no cut-off list.
This is the opposite motion to the buyback on the same token. One takes $STONKYARD off the market and burns it; the other hands ETH to the people already holding it. Both are funded out of what the protocol would otherwise keep.
What holders earn
The holders’ — accumulates as ETH against the coin. Once it reaches — ETH anyone can run a distribution: it swaps up to — into the coin’s next reward stock and credits every holder their share. Whoever runs it earns — of the amount as a bounty.
The threshold exists because a swap gives up slippage. Below it those costs are a real fraction of the trade, so a coin waits rather than paying them repeatedly on small amounts. A coin under the line is not being skipped. Its balance sits and grows until it crosses.
Shares are exact. The coin keeps one accumulator per reward stock and adjusts every holder’s entitlement on every transfer, so what you are owed follows what you held while the rewards came in, not a snapshot somebody took. There is no minimum and no rounding you out. A wallet holding a thousandth of a percent is credited a thousandth of a percent.
Who is excluded
A distribution never depends on a single stock. One the oracle cannot price, the venue cannot fill or the registry has banned is skipped for that round, and if nothing in the basket can be bought the ETH is wrapped and credited as WETH instead. Holders are always paid.
Credits are cumulative. Nothing expires, nothing is forfeited for not paying attention, and a wallet that never looks accrues exactly as much as one that checks daily.
Getting paid
Rewards are yours to pull. A distribution credits each holder their share; you collect it from the coin’s page, one stock at a time or all at once, and it lands in your wallet in the same transaction. Anyone can also claim on your behalf, and the stock only ever goes to you.
There are no token accounts to open and no rent on Robinhood Chain. Being paid in a stock you have never held costs nothing extra, and nobody has to pay it for you.
Each coin holds its own reward reserve. Hold ten coins that all pay the same stock and each of them credits you separately, so there are ten balances to claim, not one.
Nobody is skipped for being small
Payouts are listed as they happen on the rewards page, one row per transaction, each linking to the transfer on chain.
Choosing the reward
A launch picks what its holders are paid in: a tokenised equity, a pre-IPO name, or a basket of up to five that rotates. Any asset the reward registry allows is available, and anyone can register a new one that passes an automated audit, on chain, in one transaction.
| Mode | Reward | How holders are paid |
|---|---|---|
| Single | One registered stock | Each distribution swaps the pending ETH into it |
| Basket | Two to five registered stocks | Each distribution buys the next one in turn |
| Pair | The stock the coin is quoted in | Fees already arrive in it; nothing is swapped |
The audit refuses anything that cannot actually be paid out:
| Check | Why |
|---|---|
| It is a contract | An address with no code can never be a token |
| 18 decimals or fewer | The reward accounting scales to 18 decimals and no further |
| The oracle can price it | Rewards are bought at an oracle-bounded price. No feed means no bound, and no reward |
| A real market exists | Rewards are bought on the open market. A stock the venue cannot fill is skipped, not bought badly |
Governance can ban an asset that turns out to be unpayable. A ban stops new launches from choosing it and makes existing coins skip it when they distribute; it never touches what is already credited. Registrations and bans are events, so a token that passed today and rots later leaves a trail rather than a stale verdict.
What a vault is
A vault is an NFT that owns a custody account. The account fills with tokenised stock over time, and whoever holds the NFT owns whatever is in it. It is the second product here. The launcher is the first.
Minting burns — STONKYARD, pays a — ETH surcharge, and issues an ERC-721 with a custody account at an address derived from its id. The burn happens inside the mint call, before the NFT exists. Transactions are all-or-nothing, so there is no version of this where somebody gets a vault without the supply going down.
| You pay | Amount | Where it goes |
|---|---|---|
| Deposit | — STONKYARD | Burned |
| Surcharge | — ETH | — pot · — protocol |
There is nothing to activate. ERC-20 balances need no accounts, so a vault is live the moment it is minted, for every stock in the rotation and for any stock added later. — of — have been minted.
The custody account is what makes it a vault rather than a picture: it holds real stock, it is owned by the NFT rather than by you, and it travels with the NFT when you sell. It exposes only withdrawals, never an approval, so a seller cannot leave behind an allowance that drains it after the sale.
What a round does
When the pot crosses — ETH, anyone can run a round. It converts up to — into the next stock in the rotation and credits every vault equally. The rotation decides which:
A stock the oracle cannot price or the venue cannot fill is skipped for that round, and governance can retire a stock from the rotation without touching what is already owed in it. Retired stocks stay settle-able and claimable forever. Whoever runs the round earns — of it as a bounty, which is what makes it worth anyone’s while to press the button; the operations page lists everything that can be run.
Crediting is a single number. The contract tracks how much of each stock has ever been paid per vault, and your vault tracks where it last collected. What you are owed is the difference. So a round writes one number no matter how many vaults exist, and claiming yours does not move anybody else’s.
The invariant
Selling
Selling the vault hands over everything: the NFT, its custody account, the stock inside it, and anything credited but not yet collected. There is no exit function and no protocol marketplace. The custody account reads its owner from the NFT on every call, so ownership follows the NFT wherever it goes, with no migration and nothing to re-link.
A — royalty is set on the collection and paid to the pot, so every secondary sale funds the next round. It is a marketplace convention rather than something the chain enforces, so it is a behaviour, not a guarantee.
Who can change what
Every contract is owned by a timelock. A change is a public proposal that waits — before it can execute, and anyone can watch it in the queue on the governance page. Ownership cannot be renounced, because an ownerless protocol could never retire a dead stock or rotate a venue.
| Role | Who | What it can do |
|---|---|---|
| Owner | The timelock | Every parameter, venue and oracle change, after the delay |
| Proposer | The multisig | Put an operation in the queue, or cancel one |
| Executor | The multisig | Run an operation once its delay has passed |
| Pauser | The multisig | Stop vault mints and rounds instantly. Never claims, never settles |
Some things cannot be changed by anyone. The fee split. The maximum number of vaults and the cap on free grants. The credits a vault or a holder is already owed. There is no function that withdraws the pot or a graduated coin’s Uniswap position, and a new oracle must price every active stock within a factor of two of the old one before it can replace it, so a swap cannot be silently repriced.
The numbers
| Value | |
|---|---|
| Deposit | — STONKYARD · burned |
| Surcharge | — ETH · — pot · — protocol |
| Vaults | — of — minted · — of — grants used |
| Rotation | 0 stocks |
| Launch fee | — of every trade on the curve · 1% Uniswap LP fee after graduation, harvested into the same split |
| Graduation | after — raised · full-range Uniswap V3 position, locked forever |
| Launch fee split | — holders · — vault pot · — buybacks · — STONKYARD stakers · — protocol |
| STONKYARD fee split | Not routed |
| Distribution threshold | — ETH of accumulated fees |
| Distribution cap | — per call |
| Distribution bounty | — to whoever runs it |
| Round threshold | — ETH in the pot |
| Round cap | — per round |
| Round interval | — |
| Round bounty | — to whoever runs it |
| Slippage caps | — |
| Buyback | min — ETH · every — at most · — bounty |
| Dividend stream | — per inflow |
| Royalty on a sale | —, paid to the pot |
| Timelock delay | — before any change executes |
The accounts
Every address this runs on, live from the chain.
Prices are the Chainlink feeds the protocol itself swaps against. A stock showing no feed cannot be bought until one is set. The governance token is launched on Pons.