SanCrystal / Nft-assets

Home Page:https://nft-artifacts.vercel.app

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

NFT-Factory-MVP

Welcome to the NFT Factory MVP repository by Zeus Labs!

site

Table of contents

Overview

NFT Factory is a groundbreaking project by Zeus Labs aimed at democratizing access to financial assets by tokenizing real-world assets seamlessly on the Gnosis blockchain. This repository contains the Minimum Viable Product (MVP) of the NFT Factory, providing the foundation for creating and managing NFTs representing real-world assets.

Core Features Implemented

Deployment on Gnosis chain

  • Deployment on Gnosis chain for the purpose of this hackhathon.

  • data base for storage purpose

  • Nsme create the nfts

  • end users can mint

  • end user can list

  • end users can redeem their nft

  • market place for end users

Test Coverage

  • Unit testing ensures that all the codes meet the quality standards and the functions return the expected output.
  • Test coverage shows us the extent of how much of our codes are covered by tests. We ideally aim for 100% coverage.

Natspec commenting

  • This documentation provides information about the codebase and their implementation for both technical and non technical people.

Technologies

Stack Usage
Solidity Smart contract
Next JS Frontend

Repo Setup

To setup the repo, first fork the Nft-assets Repo, then clone the forked repository to create a copy on the local machine.

$ git clone https://github.com/BukiOffor/Nft-assets

Change directory to the cloned repo and set the original PrismVox.io repository as the "upstream" and your forked repository as the "origin" using gitbash.

$ git remote add upstream https://github.com/BukiOffor/Nft-assets.git

Requirements

Setup the Project

*Note:

This project was setup on a windows 10 system using the gitbash terminal. Some of the commands used may not work with the VScode terminal, command prompt or powershell.

The steps involved are outlined below:-

Install Hardhat

The first step involves cloning and installing hardhat.

$ cd core

$ npm i -D hardhat

$ npm install

$ npm install --save-dev "@nomiclabs/hardhat-waffle" "ethereum-waffle" "chai" "@nomiclabs/hardhat-ethers" "ethers" "web3" "@nomiclabs/hardhat-web3" "@nomiclabs/hardhat-etherscan" "@openzeppelin/contracts" "dotenv" "@tenderly/hardhat-tenderly" "hardhat-gas-reporter" "hardhat-deploy"

Env Setup

Next create a .env file by using the sample.env. Retrieve your information from the relevant sites and input the information where needed in the .env file.

To retrieve your gnosis key.

  • Login to gnosisscan and hover over the dropdown arrow for your profile on the navbar.
  • Click on API keys and add to create a new project (optional step).
  • Once the project has been created, click on the copy button to copy the API key.
  • Paste it in the .env file

gnosis key

Setup the Frontend

  • First run the frontend on your local server to ensure it's fully functional before building for production.

Install Dependencies

  • Setup and install dependencies
$ cd client

$ npm install

$ npm run dev

Steps to host the live site on Vercel

  • Create an account on vercel and authorize your GitHub account.

  • Once you're redirected to the Dashboard, click on the drop down menu and select Add GitHub Org or Account.

  • In the pop-up window, select the install option.

  • Once installation is completed, return to the dashboard and click new project.

  • Select the TeamB organization and select the zurischool repo to import the project.

  • Enter the relevant details and click Deploy.

Testing the Smartcontract

  • Coverage is used to view the percentage of the code required by tests and unittests were implemented to ensure that the code functions as expected

Coverage Test

  • To test the smartcontract, first open a terminal and run the following command:

  • First install Solidity Coverage

  $ npm i solidity-coverage
  • Add require('solidity-coverage') to hardhat.config.json

  • Install Ganache

  $ npm i ganache-cli
  • Run coverage
$ npx hardhat coverage --network localhost

# if you get errors and you want to trace the error in the terminal
$ npx hardhat coverage --network localhost --show-stack-traces

Factory Contract Address/ Available 2 transaction hash

Tx:

0x4f60fbb2a2d0c0162c7357ea0fd67492577168690e170d24aeb1fe60fd3afd0c

  • 0x289fe2781066b37e1e211065281f0671dd72e115da9237e7f10b6829b58071d3

the transaction hashes

Useful links

View attribution files here

https://docs.google.com/document/d/1TXCMG2I1hF8gLAJNjz69bioiZXOVwK0crSlhXWqMDvw/edit?usp=sharing

Explainer video (User POV)

nft-demo.mp4

Demo Video (Clients POV)

NFT.Factory.Explainer.video.Client.POV.online-video-cutter.com.mp4

Contributors

This Project was created by these awesome dedicated members

teamVox

Contributing to the project

If you find something worth contributing, please fork the repo, make a pull request and add valid and well-reasoned explanations about your changes or comments.

Before adding a pull request, please note:

  • This is an open source project.
  • Your contributions should be inviting and clear.
  • Any additions should be relevant.
  • New features should be easy to contribute to.

All suggestions are welcome!

README Created by Enebeli Emmanuel for Zeus Labs

About

https://nft-artifacts.vercel.app


Languages

Language:TypeScript 74.6%Language:JavaScript 14.2%Language:CSS 7.6%Language:Solidity 3.6%