ISS.PROTOCOL
Mint Mechanic

Mint by swapping. The Uniswap V4 hook does the rest.

There is no mint button. To join the station, swap into $ISS on the designated Uniswap V4 pool. When your swap clears the threshold, the pool's afterSwap hook fires and mints a Shibanaut to the swapper's address — same transaction, no second signature.

How a mint happens
01
Swap into $ISS
Trader swaps any token for $ISS on the V4 pool. Standard Uniswap UX — no special interface required.
POOL · $ISS / WETH
02
Hook fires afterSwap
The pool invokes the Shibanaut hook with the swap details. The hook reads the USD value of the buy.
CALLBACK · same tx
03
Threshold check
If swap value ≥ mint threshold, the hook tells the NFT contract to mint a Shibanaut to the swapper. Below threshold: no-op, swap completes normally.
GATE · ≥ threshold
04
Sealed on-chain
Seeder rolls traits from the mint block hash. Descriptor renders the SVG. NFT lives in the swapper's wallet.
RESULT · 1 Shibanaut
Mint status (testnet preview)
Founder window
30 / 100
Tokens 1–100 are eligible for Gold Aviators (5% rare roll).
Mint threshold
$ ——
USD-denominated swap value to trigger a mint. Locked before mainnet.
Pool fee tier
— —
V4 fee tier (0.3% or 1%). Locked before mainnet.
Why a hook?
No second signature, no separate UX

A normal NFT mint is its own transaction: connect wallet, click mint, sign, wait. The hook collapses that into the swap itself — you get $ISS and a Shibanaut in the same block, from the same signature.

That makes the collection a side effect of buying the token. The buyers who care most about $ISS become the residents of the station, by construction.

Trustless gating, no mint list

There's no allowlist contract, no signature server, no off-chain queue. The pool itself is the gate: if your swap clears the threshold, you mint. If not, you don't.

The hook code is small enough to audit at a glance — it reads the swap delta, checks the supply cap, and triggers the mint. That's it.

Contracts on chain
Hookunset
0x… not yet deployed
The V4 afterSwap callback. Reads swap value, checks supply & threshold, triggers the mint.
NFTunset
0x… not yet deployed
ERC-721. The mint entry point is callable only by the hook — there is no public mint function.
Seederunset
0x… not yet deployed
Pure function. Rolls a 6-field trait seed deterministically from the mint block hash. Enforces the founder window re-roll for Gold Aviators.
Descriptorunset
0x… not yet deployed
Nouns-forked. Holds the RLE trait bytes and renders SVG plus base64 metadata inline in tokenURI(). ~15–16 KB on-chain.
Tokenunset
0x… not yet deployed
ERC-20 $ISS. The token traded in the gated V4 pool. Holding it does not mint — only buying through the pool does.
Uniswap V4 PoolManagerexternal
Canonical V4 PoolManager
Uniswap's pool manager — the contract whose afterSwap callback we hook into. Not deployed by us.
References
For collectors

Connect a wallet, find the gated $ISS pool, swap. If your swap clears threshold and supply isn't capped, you'll mint. View your Shibanaut on the Station once it's placed.

For developers

Trait spec, contract layout, and seed encoding are documented on the Docs page. The hook is intentionally small — read the deployed bytecode on Etherscan once addresses are published.