← waxels home

the mainnet explorer

You're looking at Solana mainnet-beta (Agave 4.2.2), where SIMD-0385 v1 transactions are live — the upgrade that raises transactions from 1,232 to 4,096 bytes. Below: the actual transactions that put whole images on chain, and the images themselves, served byte-for-byte out of account data. No image files exist on this web server.

🟢 live · slot … · fridge warming up

new here? what actually happened

  1. A normal NFT stores a link to an image on chain, and the image lives on somebody's server. Waxels stores the image — the PNG bytes sit inside a Solana account.
  2. That was impossible in one step before, because a whole transaction had to fit in 1,232 bytes. SIMD-0385's v1 transactions raise the ceiling to 4,096 bytes — you can spot one by its first wire byte, 0x81.
  3. So one single transaction now carries three instructions: mint (make the canvas), scribble (write the image bytes), seal (lock it forever). One signature. Permanent art.
  4. Every image in the gallery below is fetched from mainnet when the page loads — the URL /api/waxel/<address>/image reads the account and streams the bytes back out.

the transactions

Every drawing below went on chain in one v1 transaction. Click a drawing to see its exact receipt — signature, wire size, and what each instruction did.

loading receipts…

live from the chain

These images are being served from mainnet account data right now. View any image URL's response headers and you'll find x-waxels: served byte-for-byte from Solana account data.

browse us on the real Solana Explorer

This is mainnet, so the official explorer already knows us. The program lives at 6WGNQ6jzy7TyEPHAQZzKTjoWeVqW9ciWKGtHpjpXRCFt, the fridge (global counter) at GtG657SfcA6JAzxZZPaGQE3f72vjPhR2Dw1KzUh8HCYq, and waxel the weasel — 3,082 bytes of PNG inside one account — at 38smDoPBKfQ58pHTsghP4XxSbMy1KurZ1i1EDSu4aeRL. Every receipt above has a “view on explorer.solana.com” link too.

waxel addresses are deterministic PDAs of (artist, name) — the same drawing minted on localnet last month landed at the same address on mainnet.

don't trust us — read the account

The byte layout is documented in PROTOCOL.md: image length is a u16 at offset 133, image bytes start at 135. Decode any waxel yourself from raw RPC:

curl -s https://api.mainnet-beta.solana.com -X POST -H 'content-type: application/json' -d '{
  "jsonrpc":"2.0","id":1,"method":"getAccountInfo",
  "params":["38smDoPBKfQ58pHTsghP4XxSbMy1KurZ1i1EDSu4aeRL", {"encoding":"base64"}]
}' | python3 -c "
import sys, json, base64
raw = base64.b64decode(json.load(sys.stdin)['result']['value']['data'][0])
n = int.from_bytes(raw[133:135], 'little')
open('waxel.png','wb').write(raw[135:135+n])
"  # waxel.png is your image. no gateway, no metadata server.

SIMD-0385 activated on mainnet-beta at epoch 1035 (slot 447,120,000) and waxels shipped the same program, client, and page unchanged — the only thing that moved was the RPC URL. Follow @WaxelsProtocol.