Marketplace
Umbra ships as layered APNG traits and as flattened GIF tokens. OpenSea wants the GIF bake of those loops. The mint is free. The APNG stack stays in this repo for the studio and any later restack.
Project description
Collection name Umbra. Symbol UMBR. Category PFPs. The same copy lives in public/metadata/umbra-description.txt.
Umbra. An 8,888-piece collection of looping shadow-puppet PFP GIFs on Robinhood Chain. Each shade is stacked from seven plates — cloth, ember, cast, hinge, cutwork, leaf, and soot — then flattened onto one 12-frame GIF. Eight dancing casts: clown, knight, bride, ogre, sage, harper, bird, and demon. Hinges swing the step. Cutwork lets the lamp through. Gold leaf rides the hide. Leather on a woven screen. Not risograph blots. Not origami facets. Not an engraved bust. The cast stays seated in one envelope. The dance is in the joints. One shared clock. Minting free on Robinhood Chain (chain ID 4663). Gas is ETH.
Listing kit
OpenSea wants a square logo, a 3:2 featured image, and a wide 4:1 banner — three different pictures, no type on the marketplace images. The site hero can reuse the taller banner.

Logo
512×512, 1:1
public/brand/logo-umbra.png

Featured
1200×800, 3:2
public/brand/featured-umbra.jpg

OpenSea banner
2800×700, 4:1
public/brand/banner-umbra-opensea.jpg

Collection GIF
1000×1000 loop
public/brand/collection-umbra.gif
Wallet setup
RPC https://rpc.mainnet.chain.robinhood.com
Explorer https://robinhoodchain.blockscout.com
OpenSea does not stack APNG layers for you. Studio is a live compositor. For a Drop you upload finished GIFs plus a CSV. Bake the full 8,888-token pack with python3 scripts/generate_umbra.py --all — gifs/, UMBRA-opensea-drop.csv, and the kit README land in generated/umbra/.
In OpenSea Studio, create a Drop on Robinhood Chain (chain ID 4663). Set supply to 8,888, set mint to free, paste the project description, and upload the listing kit from public/brand.
Upload every file in generated/umbra/gifs (1.gif–8888.gif) and generated/umbra/UMBRA-opensea-drop.csv. The CSV already uses OpenSea’s required headers (tokenID, name, description, file_name, attributes[Trait]). OpenSea plays GIF, not APNG. Preview the loops, then publish.
contracts/Umbra.sol mints token IDs 1–8,888 at 0 ETH. Pin generated/umbra/json and set the base URI. Import that contract on OpenSea instead of using a Drop if you want a custom mint. Gas is ETH.
Drop upload notes: Preparing metadata for your drop. Live collections: Robinhood Chain. OpenSea on Robinhood Chain: Robinhood Chain is live on OpenSea.