One hundred non representational paintings by Halden Voss, held by holders of $ART.
abstract is four things at once:
- An on chain art collection. One hundred non representational paintings by Halden Voss, minted as a Metaplex Core collection on Solana.
- A holder reward system. Hold 5,000,000 $ART continuously for 15 minutes after the coin migrates and the first 100 wallets to do so each receive one painting. After all 100 are minted out, the 100 holders share $ART creator fees and the 5% NFT royalty pro rata, on chain, by an idempotent distributor.
- A commentary on perceived value. The mechanic uses art as an example of intrinsic value while observing human nature through hold time and perceived value. The painting that someone refuses to let go of is the painting that has been correctly priced, even when the price has not yet caught up.
- An open source platform. Any art collection can fork this stack to reward its holders directly from coin fees and royalties, without an intermediary. The full tech, including the monitor, history aware re qualifier, idempotent airdrop, on chain ownership tracker, and pro rata fee distributor, ships in this repository.
The only honest painting is the painting that depicts nothing. One hundred works survey the full range of abstract instinct: color field, hard edge, grid, gesture, drip, op, lyrical, line, dark and light, where each is unique in form, palette, composition, tempo and mood. Halden Voss is the artist. The work answers to no one.
- Hold 5,000,000 $ART in one wallet.
- Keep it there 15 minutes, unbroken, after the coin migrates. Selling below the line resets the clock.
- The first 100 wallets to hold the line each receive one painting from the collection.
- NFT N goes to the Nth wallet to qualify, sent from the artist wallet. One per holder.
- After all 100 are minted out, the holders share the fees: pump.fun creator fees from $ART and the 5% NFT royalty from secondary sales, distributed pro rata across the 100 holders by an idempotent on chain distributor.
Phase 0 (already scaffolded here)
- Project scaffold, scripts, prompts, site identity, deploy templates.
Phase 1 (artist + on chain identity)
- Generate the 100 images:
npm run generate:all - Build metadata:
npm run metadata - Pin to IPFS via Pinata:
npm run ipfs - Mint mpl-core collection + 100 assets to deployer:
npm run mint - Repoint on chain URIs to the canonical https host:
npm run update:uris
Phase 2 (coin launch)
- User creates the $ART coin on pump.fun and pastes the CA into
.envasTOKEN_MINT. - After migration to Raydium, start tracking:
npm run monitor(forward), or rely on the history aware re qualifier below.
Phase 3 (eligibility and airdrop)
- Re derive eligibility from chain at any time:
npm run qualify:history - Preview the airdrop:
npm run airdrop:dry - Execute (idempotent, retries, signed receipts):
npm run airdrop - Verify on chain owners:
npm run owners - Rebuild + deploy the gallery showing real holders:
npm run site+bash deploy/deploy.sh
Phase 4 (post mintout, holder revenue)
npm run distributereads the live on chain holders of all 100 assets, takes the deployer wallet balance (minus an operational reserve), divides by 100, and pays each holder their share. Idempotent. Logs receipts.
- Default placeholder domain is
haldenvoss.art(no hyphen, so the dashless house style check ondata.jsonpasses). Swap to your actual domain in.envwhen you have one. src/prompts.jsis the single source of truth for every piece: title, form family, palette, composition, tempo, mood, seed and image prompt. Metadata, image and on chain identity all derive from it.src/lib/royalty.jsdeclares the 5% Royalties plugin used at mint and asserted by the proofs.scripts/airdrop.jsis fully idempotent: re running only sends what is missing, every send is receipted with the transaction signature.