Skip to content

0xmetropolis/metal

Repository files navigation

Metal CLI

Metal is a smart contract visualization tool. This repo contains the CLI for Metal.

Getting Started

Dependencies

Installation

# with npm
npm install -g @0xmetropolis/metal

# with yarn
yarn global add @0xmetropolis/metal

Development

The first time you set up metal for local development, you will need to run a setup script via:

yarn run dev

Whenever adding new features to metal, it can be helpful to auto-recompile the app:

yarn watch

In a new terminal, you can then issue commands to your local metal repo with the mdev command:

mdev help

Usage

Generate A Preview

In the directory of your Foundry project, run the following command:

metal preview --chain-id 1 $PATH_TO_DEPLOY_SCRIPT

NOTE: Metal wraps around forge commands, but metal preview does not send any deployment transactions.

This will compile your contracts and start a deployment simulation. Once the simulation is done, your browser will open to display the results of the simulation.

Setting the Chain Id

The --chain-id flag allows you to choose the network to preview your deployment on.

Testing

Integration Tests 🌁

Getting Help

If you run into problems or find a bug, consider opening an issue.