Solidity smart contracts for ZTX.
For further details, see the docs.
npm install
The system also requires the following environment variables to be set:
Variable | Description |
---|---|
TOKEN_NAME |
The name of the token (e.g. ZTX Token ). |
TOKEN_SYMBOL |
The symbol of the primay token (e.g. ZTX ). |
DOMAIN |
The domain of where the metadata is hosted. |
ENVIRONMENT |
The environment of the deployment (devnet , testnet or mainnet ). |
DEPLOYER_PRIVATE_KEY |
The private key of the deployer. |
MAINNET_RPC_URL |
Arbitrum mainnet RPC host. |
TESTNET_RPC_URL |
Arbitrum testnet RPC host. |
ARBITRUM_TESTNET_SEPOLIA_RPC_URL |
Arbitrum Sepolia Testnet RPC host |
See the included .env.example
for an example.
To build, run:
forge build
To run the unit tests:
npm run test:unit
and the integration tests:
npm run test:integration
To run the linter:
npm run lint:check
To generate the ABI files, simply run:
npm run clean && npm run build
We use Slither to analyse our contracts.
npm run slither:install
npm run slither