Skip to content

The #G-Naira(gNGN) is a digital currency that use Blockchain Technology to solve the rising issues on the country's financial sector. The Blockchain technology was adopted for for better transparency and accountability. The #G-Naira(gNGN) uses the ERC-20 token standard.

Notifications You must be signed in to change notification settings

MarsIfeanyi/G-Naira-Digital-Currency

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

67 Commits
 
 
 
 
 
 
 
 

Repository files navigation

G-Naira Digital Currency (gNGN)

Background

There is a rising issue concerning the country’s financial sector. To solve this, the government decided to move its financial system to the Blockchain for better transparency and accountability.

The #G-Naira(gNGN) is a digital currency that uses the ERC-20 token standard.

The contract has a GOVERNOR who has the only right/access to:

  • Mint new token currency
  • Burn token currency
  • Blacklist address/es to prevent them for sending and receiving tokens

The contract also has a Multi-Signature Wallet for secure Minting and Burning of Tokens

Deployment

The contract was deployed on the sepolia-Testnet with a TotalSupply of 100000000 and Maximum Supply of 1000000000, using Hardhat as the dev environment and Alchemy as the node provider.

EtherScan-Url

Contract Address

  • 0x68073d37e4F50aF4346C3ADCDBa7A7a5F3a58B84

TotalSupply

  • 100000000

image00

Maximum Supply

  • 1000000000

Replit-Url

The Replit url contains just the code.

Live Demo

Hint Before use:

Only the Governor has access to execute major functions or EVM calls. For full interaction with the Dapp, I recommend you re-deploy the smart contract using your own Private Key and API and then copy the contract Address and ABI that is generated and replaced it with the contract Address and ABI inside the config.js file inside constants folder of the frontEnd.

Explanation How it Works | Youtube

Remix and Solidity:

ReactJs and Solidity(dApp):

Sample Outputs A: Remix IDE

The images below shows the various outputs and cases on the UI of Remix-IDE, when the contract is deployed and interacted with.

Default values after deploying the contract.

  • This shows the Token-Name, Token-Symbol, Governor, Maximum Supply and TotalSupply

image1

Minting, Burning and Blacklisting by the Governor

  • This shows the output when the "Governor account" is executing the functions. All functions will be successful, since only the Governor has the right/access to execute them.

image2

Minting, Burning and Blacklisting by the Non-Governor

  • This shows the output when the "non-Governor" is executing the functions. All functions will be reverted/unsuccessful. image3

Making Transfer to Blacklisted Address

  • This shows the output of sending token currency to blacklisted account. The transaction will be reverted, since Blacklisted account cannot send or receive token currency

image4

Making Transfer to Non-Blacklisted Address

  • This shows the output of sending token currency to non-blacklisted account. The transaction will not be reverted, since non-Blacklisted account is allowed by the Governor send or receive token currency

image5

MultiSigMint and MultiSigBurn by verified/approved Signers

  • This shows the output of Setting up Multi signature wallet and Minting and Burning using the MultiSig wallet. The transaction will be successful, if it is done and signed by the signatory to the contract account, knowns as the "Signers"

image6

MultiSigMint and MultiSigBurn by Non-verified/non-approved Signers

  • This shows the output of Setting up Multi signature wallet and Minting and Burning using the MultiSig wallet. The transaction will be reverted. image7

Sample Outputs B: React Front-End

HomePage

image8

Mint Token Page: Mining

This is the Mint token Currency Page, when I sent transaction and is still Mining (Sent to the Blockchain for confirmation by miners) image9

Mint Token Page: Mined

This is the Mint token Currency Page, when the transaction has been Mined (Block confirmations by miners)

image10

Burn Token Page: Mining

This is the Burn Token Page, when I sent transaction and is still Mining image11

Burn Token Page: Mined

This is the Burn Token Page, when the transaction has been mined image12

Blacklist Address Page: Mining

This is the Blacklist Address Page when I sent transaction and is still Mining image13

Blacklist Address Page: Mined

This is the Blacklist Address Page, when the transaction has been mined. image14

UnBlacklist Address Page: Mining

This is the Blacklist Address Page when I sent transaction and is still Mining image15

UnBlacklist Address Page: Mined

This is the Blacklist Address Page, when the transaction has been mined. image16

Transfer Page: Mining

This is the transfer token currency page, when I sent transaction and is still mining image17

Transfer Page: Mined

This is the transfer token currency page, when the transaction has been mined. image18

Transaction Log on EtherScan

This is the transaction log on etherscan for all the interactions i did so far on the G-Naira contract.

image19

image20

Future Improvement

This project is subject to further improvements and addition of new features and upgrades.

  • Functions: More of the smart contract functions will be integrated to the FrontEnd

  • Security: More security features will be added to the Smart contract

  • UI features. more features will be added for the UI

  • Custom message: more custom message will be added to show the successful or error during transaction on the UI

  • And more

Contributing

This Project is Open for Contribution by all, Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Instructions

  • Fork this repository
  • Clone your forked repository
  • Add your scripts
  • Commit and push
  • Create a pull request
  • Wait for pull request to merge

Show your support

Give a ⭐️ if this project helped you!

License

MIT

About

The #G-Naira(gNGN) is a digital currency that use Blockchain Technology to solve the rising issues on the country's financial sector. The Blockchain technology was adopted for for better transparency and accountability. The #G-Naira(gNGN) uses the ERC-20 token standard.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published