In the last quarter, I spent about a month of personal time issuing my own NFT collection.
This article is my attempt to reflect on what I did to issue the NFTs and share what I learned along the way. I’ll keep it broad for now, but I can dive into more details if anyone’s interested.
Why I Issued NFTs
The primary reason for issuing NFTs was curiosity. While I already had some technical understanding of NFTs, I wanted to experience firsthand what draws developers and investors to this space. In hindsight, I began with an interest in the hype, but it was the technical challenges that ultimately became more rewarding.
When people learned I had issued NFTs, most of them asked, "Did you make a lot of money?" In case you're wondering, no, I didn’t. I sold them for very little, and the cryptocurrency I received went back into the ecosystem. Beyond the intangible assets like knowledge, fun, and insights, I’d say I actually lost money. It wasn’t just the transaction costs or gas fees that drained me; I also spent a lot of personal time—around a month of late nights, going to bed at 3-4 AM every day.
Building a DApp Service with NFTs
Although I say "I issued NFTs," it’s more accurate to say that I built a DApp (Decentralized Application) that utilizes NFTs.
Here’s a rough breakdown of the tasks I completed for the project:
- DApp Service Planning
- NFT Art Creation
- Smart Contract Development & Deployment
- Frontend Web Development
- Backend API Development
- Blockchain Event Listener Implementation
- Marketplace Listings (OpenSea, Polygonscan, etc.)
- Community & Marketing Channel Setup (Discord, Twitter)
- Discord Bot Creation (for stats and authentication)
As a developer, the most challenging tasks were the art and marketing. Art was crucial for the project’s success, so after finalizing the planning phase, it was the first thing I worked on. The concept behind the project, called Typical Wage Workers (TWW), was to reflect the struggles of wage workers in the real world.
The TWW NFT Collection
The concept of TWW is built around the idea that those who buy the NFTs would see themselves both as wage workers and employers in the virtual world. I created 10,000 unique TWWs, each with different appearances, attributes, and a key element—Economic Power. This attribute allowed TWWs to earn tokens within the DApp ecosystem based on their economic power.
The TWWs were created using pixel art. I divided the body parts and character features into separate elements and wrote code in C# to generate the 10,000 unique NFTs.
The TWWs come with seven tiers, 24 professions, and 15 attributes. Each TWW has a unique name and birthdate. For example, TWW #1 is "Megan Mercado," a rare-tier police officer, born on August 24, 1998.
Smart Contract and Blockchain Network
I chose the Polygon blockchain for the main network due to Ethereum's high gas fees at the time. I wrote the smart contract in Solidity since I was working with an EVM-compatible network.
Writing and deploying the smart contract was both thrilling and nerve-wracking. It was my first time working with Solidity, and the irreversible nature of smart contract deployment added to the excitement. The most exciting part was seeing the core business logic for transactions and assets being neatly organized and decentralized. I was truly amazed by the decentralized nature of Web3, where everything could be accessed and modified without relying on a centralized database or server. This is when I truly felt, "Ah, this is Web3. This is a whole new world."
Frontend and Backend Development
For the frontend, I used Gatsby and React, which is a Static Site Generator (SSG). I was quite impressed with how web technology has evolved. I’ve always preferred static websites that are pre-rendered, where JavaScript is only used to fetch the necessary data via APIs. Working with Gatsby, I could finally see the ideal web setup I had in mind.
For backend services, I used Java + Spring and Node + TypeScript. While the tasks themselves weren’t groundbreaking, one challenge was integrating the frontend with the smart contract through web3 and listening for contract events on the blockchain to trigger backend processing.
Community Building and Marketing
So far, the community-building and marketing aspects haven’t yielded significant results, but I’ve sold 300 TWWs across three rounds of sales. Each round lasts a few days and occurs monthly, but admittedly, the pace is slow due to my own procrastination.
The DApp’s name is Fungibless, and I have a roadmap for additional features, three of which have already been implemented:
- Staking: Users can stake TWWs to earn FUNGI tokens based on the economic power of their staked TWWs.
- Minting with FUNGI: Users can mint new TWWs using the FUNGI tokens, which was introduced in round 3.
- IDO: The FUNGI token is now listed on QuickSwap and SushiSwap, allowing users to exchange it for MATIC.
Lessons Learned
The most important takeaway from this experience is that, like with any other project, brand recognition and community engagement are key. In this space, it’s crucial to continually provide engaging content and actively involve the community to maintain awareness of your project.
Web3 and blockchain are revolutionary and incredibly fun, but widespread adoption is still a long way off. Minting an NFT still requires significant effort and technical knowledge, so it’s not something most people will casually dive into without passion. In my earlier thoughts, I believed the key to mainstream adoption was for users to not even realize they’re using blockchain technology, but now I see that the enjoyment and novelty come from the fact that users are actively engaged with Web3 and blockchain principles.
Final Thoughts
As for the artwork, I even created pixelated art based on my daughter and wife. It was a personal and creative touch to the whole project.
NFTs and Web3 hold immense potential, and the journey I embarked on to create this collection was truly fulfilling. The future of Web3 is uncertain, but as more people start to grasp the concept, the true value of these technologies will shine through.