@kleros/vea-contracts
TypeScript icon, indicating that this package has built-in type declarations

0.3.2 • Public • Published

@kleros/vea-contracts

Smart contracts for Vea.

Deployed Addresses

Refresh the list of deployed contracts by running ./scripts/generateDeploymentsMarkdown.sh.

Current version

Goerli

Arbitrum Goerli

Chiado

Getting Started

Install the Dependencies

yarn install

Run Tests

yarn test

Compile the Contracts

yarn build

Run Linter on Files

yarn check

Deployment

NOTICE: the commands below work only if you are inside the contracts/ directory.

0. Set the Environment Variables

Copy .env.example file as .env and edit it accordingly.

cp .env.example .env

The following env vars are required:

  • PRIVATE_KEY: the private key of the deployer account used for the testnets.
  • MAINNET_PRIVATE_KEY: the private key of the deployer account used for Mainnet.
  • INFURA_API_KEY: the API key for infura.

The ones below are optional:

  • ETHERSCAN_API_KEY: to verify the source of the newly deployed contracts on Etherscan.
  • ARBISCAN_API_KEY: to verify the source of the newly deployed contracts on Arbitrum.

1. Update the Constructor Parameters (optional)

If some of the constructor parameters (such as the Meta Evidence) needs to change, you need to update the files in the deploy/ directory.

2. Deploy to a Local Network

yarn start-local

3. Deploy to Public Networks

Testnets
# ArbitrumGoerli -> Goerli
yarn deploy --network goerli --tags ArbGoerliToGoerliOutbox
yarn deploy --network arbitrumGoerli --tags ArbGoerliToGoerliInbox

# ArbitrumGoerli -> Chiado
yarn deploy --network chiado --tags ArbGoerliToChiadoOutbox
yarn deploy --network arbitrumGoerli --tags ArbGoerliToChiadoInbox
Mainnets
# Arbitrum -> Ethereum
yarn deploy --network mainnet --tags ArbToEthOutbox
yarn deploy --network arbitrum --tags ArbToEthInbox

# Arbitrum -> Gnosis chain
yarn deploy --network gnosischain --tags ArbToGnosisOutbox
yarn deploy --network arbitrum --tags ArbToGnosisInbox

The deployed addresses should be output to the screen after the deployment is complete. If you miss that, you can always go to the deployments/<network> directory and look for the respective file.

Running Test Fixtures

yarn test

4. Verify the Source Code

This must be done for each network separately.

# explorer
yarn etherscan-verify --network <arbitrumGoerli|arbitrum|goerli|mainnet|chiado|gnosischain>

# sourcify
yarn sourcify --network <arbitrumGoerli|arbitrum|goerli|mainnet|chiado|gnosischain>

Package Sidebar

Install

npm i @kleros/vea-contracts

Weekly Downloads

193

Version

0.3.2

License

MIT

Unpacked Size

1.55 MB

Total Files

316

Last publish

Collaborators

  • greenlucid
  • jaybuidl
  • alcercu
  • clesaege
  • ferittuncer
  • danild