A protocol for managing allocation-based incentive distributions with backend-signed KYC verification and configurable expiry periods.
npm install @zoralabs/incentive-contractsA protocol for managing allocation-based incentive distributions with backend-signed KYC verification and configurable expiry periods.
This package contains smart contracts for the Zora Incentive protocol supporting:
- Period-based allocation management
- EIP-712 signature verification for KYC compliance
- multiple concurrent periods & single period claiming
- Admin-controlled funding
1. Install dependencies:
``bash`
pnpm install
2. Build contracts:
`bash`
forge build
3. Run tests:
`bash`
forge test -vvv
- forge test -vvv - Run Solidity tests with verbose outputforge test --watch -vvv
- - Run tests in watch modeforge test -vvv --match-test {test_name}
- - Run specific testpnpm test
- - Run tests via package scriptpnpm run test-gas
- - Run tests with gas reportingpnpm run coverage
- - Generate test coverage report
- pnpm run prettier:check - Check code formattingpnpm run prettier:write
- - Format code automaticallypnpm run slither
- - Run security analysispnpm run build:sizes` - Check contract sizes
-
- Ensure you have Forge installed