Smart contracts for Toucan (Polygon) - Regen bridge.
Regen Ledger is a blockchain dedicated for Earth sustainability and Regenerative Finance. Regen Ledger provides a registry for all type of eco credits. Vintages are represented as batches and grouped into credit classes.
Toucan is a digitized carbon registry implemented on Polygon blockchain. The carbon vintages are implemented as ERC20 smart contracts, called TCO2.
This repository provides smart contracts for a two way bridge for TCO2 carbon credits between Regen Ledger Eco Credits Batches and an EVM network (currently Polygon).
- burning TCO2 whitelisted tokens and issuing bridge events.
(TODO, more description will come)
- node > 16.0
git submodule update --init --recursive
yarn
To update the submodule to its latest version
git submodule update --remote --merge
- get some Polygon Mumbai testnet tokens from faucet.
yarn build
Copy .env.example
to .env
and set the desired configuration in .env
.
Before you deploy you should set up your signer wallet. You can either pass a mnemonic via the environment variable MNEMONIC
or create a mnemonic.txt
file with the seed phrase in the root of the repository.
yarn hardhat run scripts/deploy.js --network [matic|mumbai]
The mnemonic is not required for local deployments. The script will automatically default to the first signer account from Hardhat.
Run a Hardhat node in one terminal:
yarn hardhat node
In another terminal deploy the bridge and all Toucan-related contracts:
yarn hardhat run scripts/deploy-local.js --network localhost
Add a Polygonscan API key in your .env
file, then run:
yarn hardhat verify <contract_address> --network <network> --constructor-args ./scripts/arguments-<network>.js
See the LICENSE file.