Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/ileskov/technoirclub-marketplace

A collection of NFT mutant robots with their frontend and marketplace. Robots can be modified and create new robots from their parts. Over 999 trillion combinations of different robots available!
https://github.com/ileskov/technoirclub-marketplace

coverage-testing docgen ethereum-contract ethereum-dapp hardhat nft nft-collection nft-game nft-generator nft-marketplace nfts slither smart-contract solhint solidity solidity-language

Last synced: 4 months ago
JSON representation

A collection of NFT mutant robots with their frontend and marketplace. Robots can be modified and create new robots from their parts. Over 999 trillion combinations of different robots available!

Awesome Lists containing this project

README

        

24135679

# TechNoir Club

> ERC721 collection of Robot-Mutants with integrated NFT marketplace and modifying features
> Video explanation [_here_](https://drive.google.com/file/d/1JPvMUQxbuEBp40pdK7pxdyd1Wr5WGBuu/view?usp=sharing).

## ๐Ÿ“ Table of Contents

- [General Info](#-general-information)
- [Test Already Deployed Contract And Frontend](#-test-already-deployed-contract-and-frontend)
- [Set Up Goeli Test Network](#-set-up-goerli-test-network)
- [Technologies Used](#-technologies-used)
- [Features](#-features)
- [Screenshots](#-screenshots)
- [Requirements For Initial Setup](#-requirements-for-initial-setup)
- [Setup](#-setup)
- [Room for Improvement](#-room-for-improvement)
- [Contact](#-contact)

## ๐Ÿšฉ General Information

- Users can mint their unique robots
- Users can modify and create new robots from parts of 2 another robots
- Users can buy / sell robots from other users from integrated marketplace

## ๐Ÿงช Test Already Deployed Contract And Frontend

Try already deployed contract and frontend [here](https://ileskov.github.io/TechnoirClub-Marketplace/index.html)

โš ๏ธ IMPORTANT โš ๏ธ

It's required to use a Goerli test network in order to interact with this page, if you do not know how to do this, follow the instructions below

## ๐ŸŒ Set Up Goerli Test Network

### 1. ๐Ÿ’พ Download Metamask Wallet Extension

If you don't know how to do this just follow [this](https://www.cryptonary.com/cryptoschool/tutorial-how-to-download-set-up-use-metamask/) guide (Only install and save your backup phrase)

### 2. ๐Ÿ˜Ž In Metamask advanced settings make sure u have "Show test networks" button ON

### 3. ๐Ÿ›ฐ๏ธ Now switch your network to Goerli TestNet

### 4. ๐Ÿšฐ Now you need to get some test ETH from Goerli faucet

You can use [this](https://goerli-faucet.pk910.de/) or choose any other given on [this](https://forum.openzeppelin.com/t/goerli-testnet-faucets/26710) forum

## ๐Ÿ’ป Technologies Used๐ŸŒ

- hardhat - version 2.10.1
- node - version 16.15.0
- HTML, CSS and ES6 JS
- hh coverage
- slither
- solhint
- docgen

## ๐ŸŒŸ Features

List the ready features here:

- Awesome Frontend
- Trillions of different robots combination. Every robot is totally unique!
- Modyfying feature. User can create new generation robot from two another robots!
- Build-in marketplace

## ๐ŸŽฆ Screenshots

![Example screenshot](./helpers/READMEpng/Screenshot.png)
![Example screenshot](./helpers/READMEpng/Screenshot1.png)
![Example screenshot](./helpers/READMEpng/Screenshot3.png)

## ๐Ÿ‘€ Requirements For Initial Setup

- Install [NodeJS](https://nodejs.org/en/), should work with any node version below 16.16.0
- Install [Hardhat](https://hardhat.org/)

## ๐Ÿ“Ÿ Setup

### 1. ๐Ÿ’พ Clone/Download the Repository

### 2. ๐Ÿ“ฆ Install Dependencies:

```
$ cd technoir_directory
$ npm install
```

### 3. ๐Ÿ” .env environment variables required to set up

Create .env file inside project folder

- You can get your ethereum or testnet API key [here](https://infura.io/dashboard/ethereum),[here](https://www.alchemy.com) or any other service that allow you to connect to the nodes
- You can get your private key from your wallet ( โš ๏ธ Don't share your private key with untrusted parties โš ๏ธ )
- You can get your etherscan API -key [here](https://etherscan.io/myapikey).
- GEN_0_LIMIT specify by yourself

```
MUMBAI_API =
MAINNET_API =
PRIVATE_KEY =
ETHERSCAN_KEY =
GEN_0_LIMIT =
```

### 4. โš ๏ธ Run Tests

```
$ npm run test
```

```
$ npm run coverage
```

### 5. ๐Ÿš€ Deploy to Mumbai or Mainnet

(๐Ÿง Remember to have ether in your wallet to deploy contracts ๐Ÿ™„)

```
$ npm run mumbai
```

```
$ npm run mainnet
```

### 6. โœ๏ธ Insert current contract address and constructor argument you're used while deployment into package.json

```
"mumbai:verify": "npx hardhat verify --network mumbai --contract contracts/RobotCore.sol:RobotCore [RobotCore.sol address] ",
"mainnet:verify": "npx hardhat verify --network ethereum --contract contracts/RobotCore.sol:RobotCore [RobotCore.sol address] "
```

![Example screenshot](./helpers/READMEpng/Screenshot7.png)

### 7. ๐Ÿ“œ Verify contracts

```
$ npm run mumbai:verify
```

or for mainnet

```
$ npm run mainnet:verify
```

## ๐Ÿ“ˆ Room for Improvement

Room for improvement:

- Go live Ethereum network
- Make great marketing
- Go OpenSea and other NFT marketplaces

## ๐Ÿ’ฌ Contact

Created by [@LESKOV](https://www.linkedin.com/in/ivan-leskov-4b5664189/) - feel free to contact me!