Skip to content

Latest commit

 

History

History
444 lines (271 loc) · 7.74 KB

README.md

File metadata and controls

444 lines (271 loc) · 7.74 KB

Uniqueness with Authenticity.





Project Description

Problem Description

Today the authenticity of online certificates has fallen due to practices like forging, editing, etc. therefore they have lost their uniqueness.

We all have done some courses or worked in companies etc, and we get the certificates for the same, this is one of the rewards we get from the hard work. But how would you feel if someone get all those certificates without doing hard work and only by editing them? And to prevent this from happening anymore we built Certified Cliché.


Solution

Certified-Cliché, is a platform that will get the authenticity of the CERTIFICATES to the highest level.

The idea is to provide a platform where the Institutions, Organisations, or anyone who provides certificates will convert it into the NFT or store it in an NFT. That will make their certificate authentic, and then they can transfer it to the applicant. On the other hand, applicants can check all of their certificates, or NFTs they received now, and then they may showcase them to the other platforms.

Our idea is unique in itself as it restores the uniqueness and authenticity of Certificates by storing them as or in as NFT and making them more valuable.





ROADMAP





Set Up

Prerequisites


Install VS CODE or Any other IDE


Intialization


To Contribute give the repo a Star⭐️ and Fork it.


Clone the repo.

git clone https://github.com/${GitHub Username}/certified_cliche.git

Example => git clone https://github.com/Megabyte-143/certified_cliche.git


Open Terminal on the Folder

cd certified_cliche


Checkout to the dev branch

git checkout dev

Go the the client directory

cd client

Install the Dependencies

npm install
npm install -D tailwindcss@latest postcss@latest autoprefixer@latest

Switch to the CONTRACT directory

cd ..
cd CONTRACT

Install the Dependencies

npm install

🔴 Important 🔴

Create a file in CONTRACT directory named as .projectId

touch .projectId

Paste the Project ID in it.

This is the example of MATIC VIGIL

echo {appId} > .projectId

Get a Test Wallet

npx hardhat node

Copy any Private Key.

Open a New Terminal at certified_cliche

Create a file in CONTRACT directory named as .secret

cd CONTRACT
touch .secret

Paste the Test Wallet Private Address in it.

echo {privateKey} > .secret

SetUp the Metamask Test Wallet [with same Private Address].

This is the example of TEST WALLET in METAMASK.





Open The Folder in the VS Code or any IDE.





[To Run On LocalHost][recommended]


Switch to CONTRACT Directory [if you are not on it already]

cd CONTRACT

Run the Nodes

npx hardhat node

Open a new Terminal on CONTRACT Directory


Deploy the contract on the LocalHost

npx hardhat run scripts/deploy.js --network localhost

Copy the NFT CONTRACT ADDRESS and the NFT TRANSFER ADDRESS, and paste them in the CONTRACT/config.js


Open New Terminal on the client folder.


Uncomment the LocalHost provider in client/pages/index.js

 const provider = new ethers.providers.JsonRpcProvider();

Copy the NFT.json file from

CONTRACT/artifacts/contracts/NFT.sol/NFT.json

and replace it with the

client/abi/NFT.json

Copy the NFTTransfer.json file from

CONTRACT/artifacts/contracts/NFTTransfer.sol/NFTTransfer.json

and replace it with the

client/abi/NFTTransfer.json

Set the Metamask Network to LocalHost


Run the UI

npm run dev




And Now you may Start Contributing 😀






[To Run On Polygon Mumbai Testnet]

Get the Polygon Mumbai Testnet RPC URL from the providers.

For Example => Infura, MaticVigil


Copy the Project Id from the RPC URL Provider and paste it in CONTRACT/hardhat.config.js

mumbai: {
      url: `https://rpc-mumbai.maticvigil.com/v1/${projectID}`,
      accounts: [prvKey]
    }

Paste the RPC URL in the CONTRACT/config.js

export const rpc_url = `rpcUrl`;

Get a wallet where you have Mumbai Testnet Tokens for deployment and other work around.

You can get them by using a demo wallet and requesting through Polygon Faucet.


Paste the Wallet Private Key into the CONTRACT/hardhat.config.js

const prvKey = 'privateKey'

Deploy the Contract on the Polygon Mumbai Testnet

npx hardhat run CONTRACT/scripts/deploy.js --mumbai

Copy the NFT CONTRACT ADDRESS and the NFT TRANSFER ADDRESS, and paste them in the CONTRACT/config.js


Open New Terminal on the client folder.


Uncomment the Mumbai Testnet provider

For the Mumbai Testnet
const provider = new ethers.providers.JsonRpcProvider(rpc_url);

Copy the NFT.json from

CONTRACT/artifacts/contracts/NFT.sol/NFT.json

and replace it with the

client/abi/NFT.json

Copy the NFTTransfer.json from

CONTRACT/artifacts/contracts/NFTTransfer.sol/NFTTransfer.json

and replace it with the

client/abi/NFTTransfer.json


Run the UI

npm run dev


🔴 Please Note 🔴

  • Currently it is deployed on the Polygon Mumbai-Testnet.

  • Make Pull Request on Dev Branch Only


For Any Queries

TF


Project Created by