@vechain/contracts
v1.0.0
Published
A complete development environment template for building smart contracts on VeChain using Hardhat. This template comes pre-configured with everything you need to start developing, testing, and deploying smart contracts on VeChain networks.
Downloads
58
Maintainers
Keywords
Readme
VeChain Hardhat Template
A complete development environment template for building smart contracts on VeChain using Hardhat. This template comes pre-configured with everything you need to start developing, testing, and deploying smart contracts on VeChain networks.
Features
- ✅ Hardhat configuration for VeChain networks (Solo, Testnet, Mainnet)
- 🐳 Thor-Solo instance for local development
- 📦 Upgradeable smart contracts templates
- 🧪 Comprehensive test suite setup
- 🔧 Deploy and upgrade scripts
- 🎭 Mock contracts for common VeChain contracts
Prerequisites
- Node.js v20 (version specified in
.nvmrc) - Yarn or npm
- Docker (for running Thor-Solo)
Installation
- Install dependencies:
yarn install- Create your environment file:
cp .env.example .envUsage
Local Development
- Start the Thor-Solo instance:
yarn start-soloCompile
yarn compileDeploy
yarn deploy:soloor
yarn deploy:testnetor
yarn deploy:mainnetVerify (Optional)
Optionally verify your smart contracts on Sourcify. This allows 3rd to view and independently verify all of the following:
- Source code
- Metadata
- Contract ABI
- Contract Bytecode
- Contract transaction ID
After deploying SimpleStorage, the console will print the address of the deployed contract. You can verify the contract on sourcify.eth:
yarn hardhat verify --network vechain_testnet 0x98307db87474fc30d6e022e2b31f384b134c2c2aNote: Hardhat throws an error when verifying contracts on VeChain networks. This error can be ignored as the contract is still verified on Sourcify. See an example here
Test
yarn testor to generate a coverage report:
yarn test:coverage:solidityWill generate the coverage report in the coverage folder, open the index.html file in your browser to see the report.
Generate Docs
yarn generate-docsWill generate the docs in the docs folder.
Warning
This template is using the @openzeppelin/contracts-upgradeable v5.0.2 and @openzeppelin/contracts v5.0.2 in order to be compatible with the VeChain Solidity compiler version of 0.8.20.
