Companion smart contracts template repository for QuickDapp.
- Fully upgradeable contracts using EIP-2535 Diamond Standard
- Full upgrade lifecycle management using Gemforge
- Build and deploy commands already setup
- Pre-configured config file
- Post-deploy hook for Etherscan verification
This repo is a copy of the official Gemforge scaffold.
- Node.js 20+
- PNPM (NOTE:
yarn
andnpm
can also be used) - Foundry
Install and bootstrap:
$ pnpm i
$ pnpm bootstrap
Create .env
and set the following within:
LOCAL_RPC_URL=http://localhost:8545
SEPOLIA_RPC_URL=<your infura/alchemy endpoint for spolia>
ETHERSCAN_API_KEY=<your etherscan api key>
MNEMONIC=<your deployment wallet mnemonic>
Run a local dev node in a separate terminal:
pnpm devnet
To build the code:
$ pnpm build
To run the tests:
$ pnpm build
To deploy to local testnet:
$ pnpm dep local
To deploy to Sepolia:
$ export SEPOLIA_RPC_URL=".."
$ export MNEMONIC=".."
$ pnpm dep sepolia
For verbose output simply add -v
:
$ pnpm build -v
$ pnpm dep -v
MIT - see LICENSE.md