sol2uml是一款用于Solidity智能合约可视化的工具。支持从命令行界面生成合约存储图和合约类图(UML)等
sol2uml 是一款用于 Solidity 智能合约可视化的工具。支持从命令行界面生成合约存储图和合约类图(UML)等。
安装: npm install -g sol2uml
运行命令:sol2uml [command] <options>
command 选项:
命令 | 备注 |
---|---|
class | 生成 UML 类图 |
storage | 可视化展示合约存储槽 |
flatten | 扁平化 Solidity 文件 |
diff | 对比合约,可以是地址(浏览器上已验证的合约)或者本地文件 |
options 选项:
命令 | 备注 |
---|---|
-f, --outputFormat <value> | 输出文件格式("svg"(默认), "png", "dot", "all") |
-o, --outputFileName <value> | 输出文件名 |
-i, --ignoreFilesOrFolders <filesOrFolders> | 忽略文件,","隔开 |
-n, --network <network> | 区块链网络("mainnet"(默认), "goerli", "sepolia", "polygon", "arbitrum", "bsc", "optimism", "gnosis", "base"等) |
-k, --apiKey <key> | 区块链浏览器的KEY |
-bc, --backColor <color> | Canvas 背景颜色 (默认白色;"none" 则是透明) |
-v, --verbose | 使用调试语句运行 (默认: false) |
更多选项见:https://github.com/naddison36/sol2uml#command-line-interface-cli
生成 UML 类图
命令:class [options] <fileFolderAddress>
eg:sol2uml class 0xd8cbccf15f92865c400a2c1896b7f06e45ea5616 -n goerli -o ./files/uml.svg
生成合约存储布局图
命令:storage [options] <fileFolderAddress>
eg:sol2uml storage 0xd8cbccf15f92865c400a2c1896b7f06e45ea5616 -n goerli -o ./files/storage.svg
合约扁平化
命令:flatten <contractAddress>
eg:sol2uml flatten 0xd8cbccf15f92865c400a2c1896b7f06e45ea5616 -n goerli -o ./files/flatten.sol
生成文件见:flatten.sol
对比合,输出异同点
命令:diff [options] <addressA> <fileFoldersAddress>
eg:sol2uml diff 0xd8cbccf15f92865c400a2c1896b7f06e45ea5616 0xbdf39ad789ba094aa57acb8ba3ba903e43fc0d00 -n goerli
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!