CONNECTED WALLET:   not connected NETWORK:  N/A

               
Officially Illegit

Mint your Contraband-Punk NFT

The Contraband-Punk  symbolizes the true rewards to be had when we follow our hearts, take chances, and do things purely for the Love of the Game.

Contraband-Punk
▶ ANIMATE
Total Minted: 0/1024

“In The Room Where It Happened”

See the moment in which the Contraband-Punk   was born
as ⚡️lightning⚡️ was captured in a bottle!

View Everybody's Messages
View Specific Message
Token ID:
Your Token Messages

UPCOMING NFT PROJECTS

PROJECT #2

To be released in 2026

PROJECT #3

To be released in 2027

PROJECT #4

To be released in 2027

PROJECT #5

FREE to anyone who minted an
NFT from all other projects!


To be released in 2027

🔐 Contract Admin Panel (ERC721)
CONTRACT PAUSE + UNPAUSE
Status: Loading...
USER MESSAGES Feature
Status: Loading...
When disabled, only you (the owner) can add messages.
ENABLE to reveal this "surprise" feature to the NFT holders.
MAIN CONTRACT:

"MOB-STASH" CONTRACT:
SET MINT PRICE:
SET MAX-SUPPLY:
TEXT-MESSAGES DEPOT
Messages: Loading...
View Token ID:
Delete Message #:
TTP Address:
MESSAGE CAPACITY MONITOR
Check how much space messages are using in the tokenURI gas budget.
OWNER MESSAGES
Owner Messages: Loading...
Add:
0/128
SPECIAL FORMATTING CHARS
Default mode is Typewriter (character-by-character). The prefixes below opt into other modes/effects.
CHAR WHERE EFFECT
_ anywhere Renders as a blank space (e.g. _0___0_ for eyes)
* prefix Italic text
> prefix Forces scrolling mode (horizontal scroll)
^U / ^D / ^V / ^H / ^X prefix Exit anim: Up / Down / split-Vertical / split-Horizontal / eXplode
P+number mid-message Pause previous word N seconds (e.g. P2, P0.5). Pause code itself is invisible.
{tokenId} anywhere Replaced at render time with the viewer's token ID
Prefix order when stacking: * (italic) → ^X (exit effect) → > (scrolling) → message text
Examples:
  • *^V>HELLO WORLD — italic + split-vertical exit + scrolling
  • HELLO P2 WORLD — types "HELLO", pauses 2 seconds, types "WORLD"
  • GM PUNK #{tokenId} — renders as "GM PUNK #42" for the holder of token #42
  • _0___0_ — six blank spaces in a row (visual pattern for eyes)
Char counter shows typedChars + prefixLength so invisible prefixes are accounted for. Max length: 40 (main contract) or 128 (mob-stash contract).
Update #:
Delete #:
CONTRABAND PUNK MOB-STASH-CONTRACT PORTAL
Contract Status: Loading...
When main contract messages are full/disabled, minter messages route to this mob-stash contract.
Delete Mob-Stash Message for Token ID:
Mob-Stash-Contract's Owner Messages
-These messages will be stored on the mob-stash contract (no gas ceiling), will be visible on this website, but NOT on OpenSea/MetaMask/Etherscan NFT viewers — as those only read the main contract's tokenURI().
Mob-Stash Owner Messages: Loading...
Add:
0/128
SPECIAL FORMATTING CHARS
Default mode is Typewriter (character-by-character). The prefixes below opt into other modes/effects.
CHAR WHERE EFFECT
_anywhereRenders as a blank space (e.g. _0___0_ for eyes)
*prefixItalic text
>prefixForces scrolling mode (horizontal scroll)
^U / ^D / ^V / ^H / ^XprefixExit anim: Up / Down / split-Vertical / split-Horizontal / eXplode
P+numbermid-messagePause previous word N seconds (e.g. P2, P0.5). Pause code itself is invisible.
{tokenId}anywhereReplaced at render time with the viewer's token ID
Prefix order when stacking: * (italic) → ^X (exit effect) → > (scrolling) → message text
Examples:
  • *^V>HELLO WORLD — italic + split-vertical exit + scrolling
  • HELLO P2 WORLD — types "HELLO", pauses 2 seconds, types "WORLD"
  • GM PUNK #{tokenId} — renders as "GM PUNK #42" for the holder of token #42
  • _0___0_ — six blank spaces in a row (visual pattern for eyes)
Char counter shows typedChars + prefixLength so invisible prefixes are accounted for. Max length: 40 (main contract) or 128 (mob-stash contract).
Update #:
Delete #:
Mob-Stash-Contract's Javascript Plug-In Code Parts
Additional plugin JavaScript stored on the Mob-Stash contract (no gas ceiling, no per-entry size cap). NOT visible on OpenSea/MetaMask/Etherscan — only rendered when the NFT is viewed on this website (frontend integration pending).
Mob-Stash JS Code Parts: Loading...
Add New Code Snippet
Enter your new JS code (no size limit):
Update Existing Code Snippet
Index #:
New JS code (will overwrite the entry at that index):
Remove Existing Code Snippet
Index #:
Trusted Devs
Whitelisted wallet addresses that can submit Mob-Stash JS code directly (no PR review). Can be revoked at any time. The owner retains full update/remove rights on all submitted code.
Trusted Devs: Loading...
Grant or Revoke Trust
Wallet address (0x...):
SET METADATA's "DESCRIPTION" FIELD for ALL NFTs
Current: Loading...
Supports Markdown: **bold**, *italic*, [links](url), \n for line breaks. Double quotes must be escaped as \" or they will break the JSON metadata.
OWNER MINTING (Airdrops/Reserves)
To Address:
Amount:
MEMBERSHIP ("GATE") SETTINGS
(Lets me set the address of the PKProps Contract when it's ready!)
Membership Contract Address:    Loading...
Contract:
Membership NFT Required in order to Mint:
(Currently set to: Loading...)
GET TOKEN HOLDERS
(can be used to create potential future Allowlist...)
MY ON-CHAIN JAVASCRIPT
This is the main text-animation JS code that powers every NFT. It's uploaded at deploy time via the "upload-all-onchain.js" file.
-This code is split into TWO PARTS due to gas limits (it's a LOT of code), but it's one continuous codebase.
-To completely erase it - which I probably don't WANT to do (it'd be a "NUCLEAR OPTION"), I can simply submit EMPTY TEXT into the textarea below.
-To replace it, I can paste NEW code into the textarea below.
PART 1
PART 2
ADDITIONAL JS SNIPPETS (Post-Deployment)
These are extra JS snippets that can be added/appended onto the core JS code above (Part 1 + Part 2).
-I can use these to add new interactive features, sounds, Easter eggs, etc. without replacing the core animation.
-Each snippet is stored separately in a "CODE-SNIPPETS-ARRAY" that already exists in the Contract. The Array is indexed starting from 0.
Snippets currently stored on-chain: Loading...

ADDING or UPDATING JS CODE SNIPPETS 1. ADDING new JS Code Snippet:
2. UPDATING existing code-snippet at Index:
Paste new code in the textarea above, enter the snippet index, then click Update to replace it.
(clears all code snippets from the 'additionalJSCodePartsArray'!)
IMAGE URLs
Set the image URLs displayed alongside the punk animation. Landscape image appears on the left side, portrait image appears on top. Store on Arweave or IPFS for permanence.
CURRENT Left (Landscape): Loading...
NEW Left Side URL:
Top (Portrait): Loading...
NEW Top Side URL:
THE PUNK SVG + COLOR PALETTES CODE - ON-CHAIN ASSETS
Replace non-JS assets stored on-chain. These are heavy operations — typically done via deployment scripts, but available here for emergency updates.
PUNK SVG
Replace the punk SVG artwork stored on-chain. This is the raw SVG data rendered inside the animation.
PALETTE CODE
Replace the JavaScript code that generates background color palettes. This code runs inside the animation to produce palette colors.
->CAN ALSO SUBMIT "" (empty text) to DELETE any previously added Palette code!!!
PALETTE NAMES
Set the display names for each background palette (comma-separated). These names are shown to users when customizing their NFT's background.
WITHDRAW FUNDS
Contract Balance: Loading...

Connect Wallet

Processing...
Please confirm in your wallet
Minting Successful!
Your NFT has been minted successfully.
🎉 Congratulations! 🎉
You are now the proud owner of Contraband Punk #0
Minting Failed
An error occurred during minting.