Inspiration

When I was learning about Web3 I heard about a Website named CryptoKitties where we can buy two kitties as NFT and breed them to create a new one. So I thought to build one but not with kitties but with space, stars, and planets and add a metaverse with it so people can play with it.

What it does

It is an NFTMarketPlace with Metaverse support. Here we can mint our NFTs , list them , buy them add remove or update them into the metaverse and play with it. You can also mint and create NFTs with normal pictures.

How we built it

First, we will be writing our smart contracts the heart of our project. We will write four of them

  1. The basic minting and NFT.
  2. The marketplace contract for listing, buying, and removing.
  3. An converter contract to convert the price of ETH to USD.
  4. An NFTStorage contract to store NFTs that are added to the metaverse. Then we will use the third web SDK to implement all the functionality of these smart contracts. After this backend set up will set up our frontend with NextJs and Tailwind CSS. Then add all the functionalities of our smart contracts with it. Then for the database, we will be using the Graph Protocol. We will initialize the graph and then first create a createId function to initialize and load an object. Then we will write all the handler functions so that when we make a query to our database it will give us the write data. With this frontend, backend, and database we will create our project.

Challenges we ran into

  1. First and biggest challenge is to write our smart contracts they should be fully secure as well as provide the expected functionality.
  2. With the frontend part we have to ensure that the metaverse works perfectly. Every button should provide its expected functionality.
  3. With the database the challenges are to write the handler functions. We have to ensure that every query should provide its expected data. For eg. if an object exists then it should provide it instead of creating a new one.

Accomplishments that we're proud of

  1. We wrote four fully functional and secure smart contracts.
  2. We created an entire metaverse.
  3. We wrote all the handler functions for our database.

What we learned

  1. How to write useful and secure smart contracts.
  2. How to create an NFT.
  3. How to transfer and withdraw ETH via a smart contract.
  4. How to convert the price of ETH to USD in real-time by chainlink Price Feeds.
  5. How to use React-3-fiber, ThreeJs and create a metaverse.
  6. How to build 3D files on Blender.
  7. How to store your data in the blockchain with the help of The Graph Protocol and query it.

What's next for SolarCraft

SolarCraft still missing a lot of features. As popular NFTMarketplace platforms like Opensea has like, add to cart features these features are still missing in SolarCraft but will be added soon. The metaverse has no sound so it feels not so real currently but will be added soon.

Built With

Share this project:

Updates