Documentation

This is not a website.

It looks like an ordinary SaaS landing page. It isn't. Every visible element — every nav link, headline, image, background, and footer link — is a separately owned slot that lives on-chain. Anyone can buy an unclaimed slot, edit what it says, or take someone else's slot out from under them. The page is never finished and never the same twice.

For developersRead every slot as JSON A public, key-free, read-only API: every slot's owner, price, content, and full event history. One request for the whole page.

What this is

The page is carved into 165 individually owned slots. A slot is one piece of the page: a line of text, a link label, an image, or a background. Each is owned by whoever bought it last, priced independently, and editable only by its current owner. The header and nav are the most valuable real estate, so they're permanently contested.

How it works

  • Buy

    Claim an unclaimed slot at its current price. Prices start at a floor of 0.001 ETH and rise with how valuable the slot is.

  • Edit

    As the owner, set the slot's content. Your content is hashed and that hash is committed on-chain — nothing renders unless its hash matches the on-chain record (and, for images, clears an automated safety screen).

  • Take

    Anyone can take an owned slot by paying 1.4× its current price. The previous owner is credited 1.15× — more than the current price — so being taken is a profit event, not a loss. The remainder funds the creator (5%) and the protocol treasury. A 15-minute cooldown applies between takes on the same slot.

    Payouts are claimable, not pushed: the contract credits your balance and you collect it yourself from the withdraw page. Nothing expires — a balance sits there until you take it.

  • Decay

    Unclaimed or stale slots lose 10% of their price per week (×0.9), drifting back toward the 0.001 ETH floor — capped at 52 weeks. Grab a decayed slot while it's cheap.

Once you own a slot

Buying is the start, not the end. An owned slot is an asset you can price, rent out, or change the shape of.

  • It's an NFT

    Every slot is an ERC-721 token, so it shows up in your wallet and can be transferred or sold like any other NFT — entirely separately from the take mechanic. The artwork is generated from the slot's live state, so it changes as the page does. The collection is listed on OpenSea, where slots trade at whatever a buyer will pay — which is a separate market from the 1.4× take price, and can disagree with it in either direction. Buying the token on OpenSea makes you the slot's owner: you get the edit rights and the 1.15× payout if someone later takes it.

  • Set your own asking price

    Move your slot's price between 0.1× and what the formula says. Mark it up if you don't want to be taken, mark it down to invite one. The multiplier resets the moment the slot changes hands, so you inherit a price, never someone else's markup.

  • Rent it out

    List a slot at a daily rate and let someone else write in it for up to 7 days while you keep ownership. The rate floor is 0.25% of the slot's current price per day, and the protocol takes 35% of the rent. The tenant controls the content until the term ends — and a tenancy survives a sale, so taking a rented slot means inheriting its tenant.

  • Upgrade what it can hold

    Turn a text slot into a link, an image, a background, or a video by burning $website — 50,000 for a link, 250,000 for an image or background, 1,000,000 for video. The tokens go to a dead address, permanently out of supply. An upgrade lasts 21 days, after which anyone can retire it and the slot reverts. Slots have to be physically big enough — images need 160×32, video 320×180 — so not every slot can become every kind.

Shuffle

A few times a week, at no announced hour, a button appears on the page. Whoever presses it makes every owned slot swap its contents with another one: the footer's sentence becomes the headline, and the headline drops to the footer. It stays that way for 90 minutes, then snaps back.

  • Nobody loses a slot

    Only what renders moves. You still own the slot you bought, at the price you bought it, and you are still paid 1.15× if someone takes it. A shuffle writes nothing to the chain — ownership and content hashes are untouched, and it is applied in the render path alone.

  • Only owned slots play

    Slots trade places in pairs, and an unclaimed slot is never one of them — there is nothing in it to swap.

  • Buying pulls a slot out

    Buy a slot mid-shuffle and it — plus whichever slot it swapped with — goes straight back to its own content. You never pay for a box showing someone else's words.

  • It is capped

    At most 8 in any 7 days. "A button that shows up at random" is easy to read as "constantly"; it isn't.

A shuffle is part of the permanent record like everything else — the history view reconstructs the page as it actually stood during one, not as it would have looked without it.

Everything you do is recorded on-chain

There is no hidden state. Every buy, take, edit, rental, and upgrade is a public, permanent transaction on Robinhood Chain mainnet. Ownership, prices, rental terms, and the hash of every piece of content are all committed and verifiable on the block explorer. The off-chain layer only stores content bodies keyed by their on-chain hash — nothing you see on the page exists without a matching on-chain commitment.

In other words: your wallet address, what you bought, what you paid, and what you wrote are all on the public record. Treat every action here as permanent and visible to anyone.

Content & safety

Uploaded images run through an automated screen before they go live, and slots under review are visibly marked rather than quietly hidden. Full details, and what we don't yet do, are on the Content & Moderation Policy page.

The protocol behind it is open

The mechanic on this page — the price formula, the buy/edit/take state machine, pull payments, delegated editing — was extracted into websitekit, a public SDK and set of contracts for making any page's regions ownable. A publisher registers regions of a rendered page as discrete, transferable positions; holders can then delegate write access on a position without giving up the asset.

This site is one board. websitekit is the thing that lets you run your own — docs, the protocol spec, an API reference and worked examples are all at websitekit.org.

Deployed contracts (mainnet)

Everything runs on Robinhood Chain mainnet. These are the live coordinates — click any address to view it on the block explorer.

TinawSlots v2
0xa112f87dd43D4265Bdd3918A4bb593C7F83ED50aThe contract that owns all slot state, pricing, buys, takes, and edits. Source verified on Blockscout ✓
TinawSlots v1
0x28Ddf599f8c16ee36a77D7b420973F7201a8BF3cThe original board, frozen. It is not retired and cannot be: any payout owed to you there is still claimable from it, permanently, and the site keeps that path open.
Owner / treasury / creator
0x15e1D12Fc8A7bF97eaaB211d6353F585C53905c6The solo-operator account that receives the treasury and creator cut.
Network
Robinhood Chain mainnet · chain id 4663
RPC
https://rpc.mainnet.chain.robinhood.com

This runs on mainnet — buys, takes, and edits move real ETH and are permanent and public. The mechanic is the point — and the joke.