DOCS
How the whole thing actually works.
Every figure below is read from Robinhood Chain as you load the page — fees, thresholds, addresses, the palette. Nothing here is transcribed, so nothing here can be out of date. Where a number is still in flight it shows a dash rather than a guess.
What a share is worth
Net asset value divided by supply. NAV is what the vault holds — every stock token valued at its leg’s price source, plus the USDG sitting as the cash leg — and the canvas page states both numbers beside each other so the division is checkable.
A vault’s first deposit opens it at exactly one dollar per share, which is an artefact of the share-decimal offset rather than a peg. From then on the price is whatever the basket is worth. It moves with the stocks and it can fall.
Shares mint on the NAV the deposit actually realises, never on its face value. If the routed swaps come in worse than the pool’s average, the delta is smaller and so is the share count. The deposit panel predicts that number before you sign, and passes a floor with the transaction so a materially worse outcome reverts instead of settling.
Getting out
Redemption burns exactly the number of shares you pass and pays you that fraction of every leg in kind — the stock tokens themselves plus the cash leg’s USDG, not a dollar figure. Any amount, down to the last decimal place. There is no lock-up, no queue and no notice period.
Redemption never pauses. It reads no prices, calls no price source and touches no venue — it is division, not a trade. Every deposit path in this document can refuse for one reason or another; this one keeps working through all of them, including with every price source down.
Because it is paid in kind, a redemption is invisible in a wallet that does not know the stock tokens. The canvas page quotes every token a redemption would pay, and in what quantity, before you sign — worth reading either side of the transaction, since it names exactly what should have arrived.
Accrued creator and protocol fees sit in the vault but are excluded from NAV, so they are never part of what a share redeems for. They belong to the creator and the protocol from the moment they accrue.
Depositing the basket instead of cash
If you already hold the underlying stock tokens you can deliver them directly and mint shares without touching a venue. You name the share count you want and a ceiling on each token you are prepared to hand over; the vault takes exactly the proportion that leaves its own ratios unchanged.
This path reads no prices either. If the vault holds some quantity of each leg against a supply, and you deliver exactly that proportion of each, then minting leaves every ratio identical — an identity, not a valuation. Two consequences worth knowing: you pay no swap fee, no price impact and no execution band, and it keeps working when USDG deposits are being refused because a pool is off its average.
Fees on this path are taken as share dilution rather than in USDG, because there is no cash in the transaction to skim.
This site has no interface for it yet. The path is live on the vault and anyone can call it, but only by calling the contract directly — the deposit panel here does the USDG route alone. Said plainly because the rest of this page describes things you can do in the app, and this one you cannot.
What a canvas is
A hundred squares. Each one is one percent of the portfolio, each colour is a real tokenized stock, and a blank square is a percent held in cash. The picture is not a representation of the allocation — it is the allocation, stored on chain as four packed words and read back by the vault as the weights it buys to.
Weights are frozen at mint. No function exists to repaint a canvas or rebalance it to different targets, so the fund you deposit into is the picture you looked at. The artwork is drawn by the contract itself — there is no image file, nothing hosted and nothing to go missing.
- Grid
- 10 × 10, one percent per cell
- Palette
- —
- Canvases minted
- —
Fees
There is no management fee. Nothing is charged against assets held, so a position that sits untouched is not eroded. Fees are charged on money coming in, once.
- Creator fee
- Set per canvas at mint, up to —Chosen once by the creator. No function exists to change it afterwards, on any canvas, by anyone.
- Protocol fee
- —Charged on top of the creator's, not carved out of it. Adjustable by the protocol owner; every vault reads it live.
- Typical all-in on a deposit
- —At the suggested 0.75% creator fee. The canvas page states the actual number for that canvas before you sign.
- Redemption fee
- None
- Mint a canvas
- —Paid once by the creator. The exact amount is required — a mint with anything else reverts.
How a deposit executes
One transaction, and it either completes in full or reverts. The steps below are what the vault does between receiving your USDG and minting your shares.
- 01Fees come off the topCreator and protocol cuts are taken in USDG before anything is routed, and held aside — excluded from NAV, so they never dilute a share.
- 02NAV is snapshottedEvery leg is priced and valued, held or not. A leg whose source refuses closes the deposit here, including legs the deposit would not have bought.
- 03Targets are computedEach leg's target is its cell count as a percentage of the vault's total value after the deposit — not of the deposit alone.
- 04The deployable amount is worked outEverything the vault holds in USDG above the cash target, which can be more than you deposited: cash left behind by earlier deposits is swept in too.
- 05Allocation corrects driftBuying is not pro-rata. Each leg's shortfall against its target is what gets filled, so a deposit pulls a drifted vault back towards the picture. Deposits only ever buy — nothing is sold to rebalance.
- 06Legs under — are deferredA leg too small to be worth a swap is skipped and its share held as USDG. It is not lost — it counts in NAV, you get shares for it, and step 4 means the next deposit into that canvas deploys it.
- 07Delisted legs are held as cash tooIf a ticker has been deactivated in the palette its share stays in USDG. The artwork is unchanged and redemption still pays out whatever the vault holds of it.
- 08Swaps execute against your boundsEach leg carries a minimum output you signed. A leg that cannot meet it reverts and takes the whole deposit with it — atomic, or nothing.
Execution is bounded in both directions. A leg coming in worse than your bound reverts, and so does a deposit whose realised value exceeds what it deployed by more than —. The second one sounds like a bargain and is not: shares mint on realised value, so buying far below the mark mints more shares than the deposit paid for, at the expense of everyone already holding.
Pricing, and when deposits are refused
Every leg is priced off the Uniswap pool it trades in, as a — time-weighted average rather than the spot price. The same pool that sets the mark is the pool the swap goes through, so there is no gap between the price the vault believes and the price it can get.
A source refuses to answer rather than answering badly, and a single refusing leg closes deposits into every canvas that uses it. That is deliberate: a price the vault cannot vouch for is one somebody can mint shares against.
- Averaging window
- —
- Deviation bound
- —Spot further than this from the average and the source refuses — someone is pushing the pool, or the market has genuinely moved and the average has not caught up.
- Also refuses when
- The pool has no liquidity at the current price, or is too new to serve the full window
- Effect on redemption
- None, ever
The canvas page states each leg’s status live — its spot, its average, how far apart they are, and whether it is refusing — so a closed deposit says which leg and why rather than failing at signature.
The palette
The tickers below are the deepest USDG pools on the chain, ranked by what it costs to move each one one percent — depth, not size, and measured rather than picked. Depth is the metric because pool prices are what the vault trusts: a pool that is cheap to move is cheap to steal through.
A colour is permanent from the moment its index is assigned. There is no function to recolour one, because doing so would repaint artwork somebody already owns.
| Index | Colour | Ticker | Deposits |
|---|---|---|---|
| 0 | CASH | A blank square. USDG, never traded. | |
| 1 | SGOV | Open | |
| 2 | NVDA | Open | |
| 3 | QQQ | Open | |
| 4 | GLD | Open | |
| 5 | SPCX | Open | |
| 6 | AMC | Open | |
| 7 | TSLA | Open | |
| 8 | LLY | Open | |
| 9 | MU | Open | |
| 10 | AMZN | Open | |
| 11 | HIMS | Open | |
| 12 | DJT | Open | |
| 13 | TTWO | Open | |
| 14 | SLV | Open | |
| 15 | RDDT | Open | |
| 16 | GME | Open | |
| 17 | LULU | Open | |
| 18 | CRCL | Open | |
| 19 | COST | Open | |
| 20 | AAPL | Open | |
| 21 | BABA | Open | |
| 22 | MSFT | Open | |
| 23 | GOOGL | Open | |
| 24 | SPY | Open |
The colour map shows how the set reads at thumbnail size, which is the size that decides whether two holdings are tellable apart.
Addresses
Robinhood Chain, chain 4663. Every contract is source-verified. A canvas’s vault has its own address, shown on that canvas’s page — that is the one to add to a wallet to see your shares.
- Canvas NFT
- 0xf5fE6EdcAac468aBB76799A79ce6FAa605252193
- Vault factory
- 0x08583D523C3bCa670862Ac508Cc3D089E3B0f9CF
- Palette registry
- 0x569e67486998A0C0987EAB5d86E685834D0a4be2
- Renderer
- 0x75e1F8285af88F59Bf6aCB10Bc392414eA40F02E
- Vault implementation
- —Every vault is a minimal proxy to this. Changing it affects only vaults created afterwards.
- Deposit asset
- —
What can change, and what cannot
The distinction worth trusting is not a promise, it is whether a setter exists. Each guarantee below is pinned by a test that fails if someone adds one.
- A canvas’s weights, once minted.
- A creator’s fee, once set at mint.
- A palette colour, once assigned.
- Which token a palette index means.
- The renderer a canvas was minted against.
- That redemption is always open.
- The protocol fee, within a hard cap.
- Where protocol fees are collected.
- The dust threshold — — today.
- The favourable-execution band — — today, bounded at both ends.
- The mint fee, and the creator-fee ceiling for future canvases.
- Whether a palette index accepts new deposits.
Nothing in the right-hand column can reach vault assets, existing shares, or anyone’s ability to redeem. Deactivating a ticker stops new money going into it; it does not touch what a vault already holds, and it never blocks getting out.
An on-chain index, not an ETF in the regulated sense — the name is a nod. Nothing here is investment advice, and a canvas is only ever worth what its holdings are worth. If something on this page disagrees with what a contract does, the contract is right and this page is a bug.