PaRappa — The NFT Wrapper

Hackathon Project Brief

4 min readJan 23, 2021


In Part 1 and Part 2, I outlined what wrapped NFTs are being used for, and how they are an exciting area of growth in the crypto-collectibles space.

If you’re excited about this space too, your next thought might be:

“How can I wrap my NFTs for my project?”

I’ve wanted to do some projects involving wrapped NFTs and have found that there’s no single templated approach to creating wrapped NFT tokens, so for the Untitled Hackathon, I’ve proposed PaRappa the Wrapper, which can be a wrapped NFT smart contract factory with tools to launch other projects.


So what problem does PaRappa solve? In addition to the general need for tools and templates, the bigger picture motivation for enabling wrapped NFTs is:

To create automatic liquidity for base value NFTs.

Let’s walk through why you might want to do this using a fictional crypto-collectible called CryptoBadgers.


So you’ve discovered CryptoBadgers and excitedly mint some of the collectible NFTs, each of which has special traits — and some combinations of traits are very rare while others are common.

You’re happy with you collection of 100 CryptoBadgers, but really there are 10–20 of them which are very rare and collectible, while the others are common enough that they are more or less interchangeable in value — or base value.

Now, let’s say you’d like to extract some of the value you spent on those CryptoBadgers — maybe just to mint more of them in search of the rarer varieties.

Currently, if you wanted to sell those 80 base value CryptoBadgers, you could look them up on a market like OpenSea and see what the lowest, or floor, price is for the most common variety.

You find that most CryptoBadgers with common traits are being listed for 0.02 ETH, so you list the 80 NFTs you’d like to liquidate for that price.

Now, in a healthy market, sales will start to come in– but will it take days, weeks, months or years to sell all 80 NFTs? It’s impossible to know.

Or, the floor price might drop to 0.015 — which means you would need to re-list all 80 NFTs for that price to match it.

So the problem again, is:

NFTs are illiquid assets by design

They are meant to be individually assessed and valued, except in practice, you can group the lowest, base value NFTs together and price them at the floor price.

Enter — Wrapped CryptoBadgers

Let’s imagine that instead of listing those 80 CryptoBadgers, you could go to the Wrapped CryptoBadgers site, select the 80 NFTs you’d like wrapped, and press ‘Wrap’.

In exchange, 80 WCB tokens are sent to your wallet. Those tokens are in-turn exchangeable for 0.02 ETH each on an exchange like Uniswap.

You now have the ETH you need to continue minting new CryptoBadgers.

Effect of the market value

But what happens if the audience for CryptoBadgers explodes and now the floor price of CryptoBadgers has gone up to 0.04 ETH?

There is now an arbitrage opportunity between WCB tokens and the CryptoBadgers they are backed by.

So you could trade 0.02 ETH each for some WCB and then ‘unwrap’ those tokens for the underlying CryptoBadgers, and then sell them at profit for 0.04 ETH on the marketplace.

The act of trading ETH for WCB will raise the value of WCB until it reaches 0.04 ETH. So realistically, the arbitrage opportunity can be realized using the WCB token, and an understanding of the underlying value — without needing to unwrap and exchange the underlying NFTs.

Equally, if the floor price goes down, it will encourage people to wrap more of the floor value CryptoBadgers until they can extract the difference in value with the now overpriced WCB tokens.


The goal of PaRappa is to make it easy for anyone to create wrapped tokens, for any ERC-721 standard NFT, per the example above, without needing to code smart contracts.

PaRappa is a Universal NFT Wrapper Factory

The idea is that you should be able to look up any NFT in your wallet (or by entering the address directly) and find the wrapped token for that NFT for exchange — or if it doesn’t exist, be the first to create that type of token (as a new smart contract generated from a template).