The thesis
A token that is also an NFT. Tradeable on pump.fun and on every Solana NFT marketplace at the same time. Built where nobody else had built it.
01
Pump.fun ships clean, bare SPL tokens. Bonding curve, graduation to PumpSwap, creator fees. What it doesn't ship is any NFT primitive. The hybrid token-NFT mechanic on Solana - SPL-404 - requires Token-2022, which is incompatible with the classic SPL tokens pump.fun launches. Every existing hybrid project had to leave the launchpad to work. The constraint nobody had solved: how do you bind a token to an NFT without modifying the token?
02
CryptoBulls solves it with an NFT-owned vault PDA. Each Bull NFT has a vault token account whose authority is derived from the NFT's mint pubkey itself:
PDA(["vault", nft_mint]). The vault has no private key anywhere. The only way to sign for it is through this program, which gates signing on the caller holding 1 of nft_mint.03
When the NFT trades on Magic Eden or Tensor, the vault doesn't physically move. The address is unchanged. The authority is unchanged. What changes is who can drive the program to drain it. Possession of the NFT is possession of the right to redeem the tokens. The underlying SPL token never had to be modified. The launchpad never had to be replaced.
04
The result: the first hybrid token-NFT layer that works on pump.fun-launched memecoins. 1,000 max supply. 1,000,000 $BULLS per bull. 100% on-chain pixel art. Same launchpad you already use, same PumpSwap graduation, same wallet UX - with a native NFT primitive on top of the standard token.
05
uPeg uses Uniswap v4 hooks to bind a token to a generative NFT on Ethereum. CryptoBulls uses Solana PDAs to bind a token to a separately-tradeable NFT on pump.fun. Different problems, same instinct: use a chain primitive instead of a hybrid token standard.
๐
Crypto + Bulls = CryptoBulls
A token that is also an NFT. Built on the launchpad where nobody else could build it.