Credits
Handsel is assembled out of other people's work. This page names all of it, with the licence each piece is used under.
The photograph
Field of colorful tulips red field spring (52829438249) by Jernej Furman from Slovenia, CC BY 2.0.
Spring tulip beds in full sun: things somebody planted for somebody else to find. A handsel is a gift at a beginning, and this is that photographed — without a single coin, wrapped box or handshake in it. It was a DECISION, taken against eight other candidates that were all measured the same way (tools/photo-stats.mjs): scarlet lai-see envelopes, marigold markets, a poppy field, cherry blossom. The poppy field measured better on paper and was rejected on meaning — a red poppy reads as remembrance. What measurement then decided was the crop and the tone: this frame was chosen over three others because its deep shade was the part of the picture the glass cards could not clear, and the ground was deepened until every one of the 63 colour pairs held.
The file's page on Wikimedia Commons · the licence
The file this site serves is a crop of that photograph, softened and re-encoded by tools/crop.mjs and tools/make-ground.mjs; the original is never served. Which photograph is a decision and it is written down in CLAUDE.md; the crop, the blur and the tone were then chosen by measurement, against a palette that refuses to be written unless every pair of colours on it holds.
The typefaces
Newsreader (Production Type, SIL Open Font License) for the display type, Karla (Jonny Pinhorn, SIL OFL) for everything else, and IBM Plex Mono (IBM, SIL OFL) for addresses and amounts.
The contracts
Handsel deploys nothing. Every transaction it builds is a call to contracts that were already live on Robinhood Chain:
| What | Address |
|---|---|
| Uniswap Universal Router | 0x8876789976dEcBfCbBbe364623C63652db8C0904 |
| Permit2 | 0x000000000022D473030F116dDEE9F6B43aC78BA3 |
| Uniswap v3 factory | 0x1f7d7550B1b028f7571E69A784071F0205FD2EfA |
| Uniswap v4 PoolManager | 0x8366a39CC670B4001A1121B8F6A443A643e40951 |
| Uniswap v4 StateView | 0xF3334192D15450CdD385c8B70e03f9A6bD9E673b |
| QuoterV2 (v3) | 0x33e885eD0Ec9bF04EcfB19341582aADCb4c8A9E7 |
| Quoter (v4) | 0x8Dc178eFB8111BB0973Dd9d722ebeFF267c98F94 |
| USDG — Global Dollar | 0x5fc5360D0400a0Fd4f2af552ADD042D716F1d168 |
| WETH | 0x0Bd7D308f8E1639FAb988df18A8011f41EAcAD73 |
| Multicall3 | 0xcA11bde05977b3631167028862bE2a173976CA11 |
Every one of these was read back on chain and asked to prove what it is before it was written into js/config.js — node tools/verify-addresses.mjs. An address that is only ever copied out of a document is an address nobody has checked.
And
Uniswap, for publishing the source of the router this chain actually runs — the deployed build takes arguments the older documentation does not mention, and reading it is the only reason the first transaction worked. Paxos for the dollar every gift is priced in. Blockscout for an explorer that answers questions the public node will not.