Reference
Token metadata
Explorer logos, the token list, and social links.
Explorer logo#
Wallets and explorers show a logo from token metadata. They cannot read bytecode media. At review, the app makes a logo from your media and pins it to IPFS.
| Your media | Logo source |
|---|---|
| Has an image | The image (first frame for GIFs) |
| Has a video, no image | A frame from the start of the video |
| Neither | A generated tile with your ticker |
Logo size#
- Every logo is 500 pixels tall.
- The width follows your media's shape. A square becomes 500 x 500. A 16:9 file becomes 889 x 500.
- Nothing is cropped. Very wide media is capped at 2000 pixels wide.
- JPEG sources and video frames produce a JPEG. Other images produce a PNG.
- Logos are kept under 1 MB. Large logos drop JPEG quality first, then scale to half size.
The live preview on the launch page shows the logo before you sign.
If pinning fails#
The review screen shows Retry logo and Launch without logo. A launch without a logo works the same way. Wallets just show no image for it.
contractURI (ERC-7572)#
Each token has a contractURI() that points to a JSON file on IPFS. It is set at launch and never changes.
- It is either empty or an
ipfs://link of up to 200 bytes. - The token emits
ContractURIUpdated()once at deployment. - The metadata has no token address, because the address does not exist until the launch confirms.
{
"name": "Test",
"symbol": "TEST",
"description": "Test",
"image": "ipfs://<logo CID>",
"external_link": "https://example.com",
"decimals": 18,
"properties": {
"chain_id": 4663,
"launchpad": "Scrible",
"inscriptions": [
{ "mime": "image/jpeg", "digest": "0x…", "size": 41958, "category": "image" }
],
"logo_source": { "inscription_index": 0, "kind": "image", "inscription_digest": "0x…" },
"links": { "website": "", "x": "", "telegram": "" },
"note": "Logo is an IPFS copy derived from the onchain inscription; the inscription (keccak digest above) is the source of truth."
}
}
external_link is your website, or the Scrible app if you left it blank. kind is image, video-first-frame, or generated.
The inscription wins
The IPFS logo is a copy for wallets. If it ever differs from the inscription, trust the inscription and its digest.
Token list#
The app serves a token list in the Uniswap token list format:
https://scrible-six.vercel.app/tokenlist.json
- It lists tokens from the three newest factories.
- Each entry has the chain ID, address, name, symbol, 18 decimals, and a logo URL when the token has one.
- Logo URLs use an HTTPS IPFS gateway, because many wallets cannot open
ipfs://. - The list refreshes every 5 minutes.
Tokens with symbols outside A-Z0-9 or names over 60 bytes are left out.
Social links#
Website, X, and Telegram links live in the links registry at 0xA4b353d8D4Fc2c037828Bb802930215c01772cd4. They work for every Scrible token, old or new.
- Only the token's
creator()can set links. - The creator can change them at any time from the token page with Edit links.
- Website must start with
https://. X must start withhttps://x.com/orhttps://twitter.com/. Telegram must start withhttps://t.me/. - Each link is up to 120 bytes. At least one must be set.
getLinks(address token) returns (string website, string x, string telegram)
setLinks(address token, string website, string x, string telegram)