CassavaLand by Team CassavaLab - A multi-blockchain platform to create, explore and sell extra-ordinary NFTs

Project Name: CassavaLand
Project Track: NFT
Team Name: Team CassavaLab
Team Member(s): 2 | iphyman
DevPost URL: Devpost Project
Project Goal: To easy the process of creating, sales and purchase of Non-fungible tokens (NFTs) across multiple blockchains
Project Repo/Website: Github | Demo website
Project Details:

Inspiration

CassavaLand began with the curiosity to understand how Non-fungible token (NFTs) work, coming from a web2 background it wasn’t easy getting it to work as it requires a bit of understanding of the Solidity smart contract programming language. So to make this tedious process smooth for non tech users, the need to create an NFT minting platform with easy to use user interface.

There was initially no plan to extend the project beyond personal use but given the high buzz of NFTs and well established platforms are slow to adapt to new and faster blockchains. The project UI is largely influenced and inspired by big players in the NFT industry like Opensea and Rarible.

What it does

Cassavaland’s core functionality at the moment is a platform to mint and showcase both BRC721 and BRC1155 (partially) standard NFTs on the Bittorrent Donau blockchain.

How we built it

Cassavaland project uses a mono repository design. The repository is grouped into apps and libs sub folder, the apps folder contains 3 major apps;

    1. Smart contracts
    1. Subgraphs
    1. Ui

The smart contract contains the core definitions for a standard BRC721 and BRC1155 token standard definitions with support for royalty. The smart contracts is compiled using hardhat

The subgraph is used to index scrape events emiited by the smart contracts on the blockchain into an easy to query database, though not used in this project.

The Ui folder contains the code for the application frontend and API. The project is built using NextJs a server side react framework.

Challenges we ran into

At first we ran into challenges on getting an RPC node as we initially wanted to build a custom standalone NFT indexer but the crazy thing is that we followed the developer documentation to provision a full node, as simple as the doc was to follow it’s obvious that lack of sleep had got us running around a simple task for close to a week, posted on the BTTC and TRON discord for help but no response.

Another challenge was later when we decided to deploy a local graph node indexer, aha we got bated again by a chunk of errors which we later discovered to be an issue with RPC node provider as the graph node requires an archival node to function which we don’t have hence we abandoning the use of the subgraph.

Accomplishments that we’re proud of

It was my first time to provision a blockchain node, am used to using APIs from Infura, am really proud to have learned some linux commands and obviously how to run a bittorrent full node.

What we learned

What’s next for CassavaLand

In next few months we hope to build out the project to a full NFT platform like Opensea and rarible.
We are currently developing a custom nft indexer using NestJs and Mongodb, an opensource beta version will be out in 3 weeks (August 15th - 20th). With our marketplace contract deployed at the same period.

We are targeting mainnet launch on or before the end of September 2022.

Wallet Connecting

Asset display page

User profile

12 Likes

The idea seems fantastic, good luck, dude.

1 Like

Thank you very much.

It’s great that you used that. @iphyman :slight_smile:

2 Likes

The idea of this project is very good!

3 Likes

Very nice presentation! I’m the CBO of Tronbies brand, #N18, hopefully we can work together in the future :muscle:

1 Like

sure, I look forward to that.

1 Like

Great project with good potentials

Am in support of this

Wishing you good luck on your project

1 Like