资源¶
Solidity IDE及编辑器¶
常用:
- EthFiddle
基于浏览器的 IDE,可以编写和分享Solidity 代码,需要服务端。
- Remix
基于浏览器的 IDE,集成了编译器和 Solidity 运行时环境,不需要服务端组件。
- Solhint
一种静态检查器,提供安全和风格指南以及智能合约验证的最佳实践规则。
- Solidity IDE
基于浏览器的 IDE,集成了编译器,支持 Ganache 和本地文件系统。
- Solium
一种静态检查器,识别和修复 Solidity 中的风格以及安全问题。
- Superblocks Lab
基于浏览器的 IDE, 集成了基于浏览器的虚拟机以及 Metamask ,可以一键部署到主网和测试网。
Atom:
- Etheratom
Atom 编辑器的插件,支持高亮、编译和运行时环境(兼容后端节点和虚拟机)。
- Atom Solidity Linter
Atom 编辑器的插件,提供 Solidity 语言的 Lint 检查(静态检查)。
- Atom Solium Linter
Atom 的可配置的 Solidty 静态检查器,基于 Solium。
Eclipse:
- YAKINDU Solidity Tools
基于Eclipse的 IDE. 具有根据上下文代码补全和帮助,代码导航,语法高亮,内置编译器,快速修复和模板功能。
Emacs:
- Emacs Solidity
Emacs 编辑器的插件,提供语法高亮和编译错误报告。
IntelliJ:
- IntelliJ IDEA plugin
IntelliJ IDEA 的 Solidity 插件(可用于其他所有的 JetBrains IDE)
Sublime:
- Package for SublimeText - Solidity language syntax
SublimeText 编辑器的语法高亮包。
Vim:
- Vim Solidity
Vim 编辑器的插件,提供语法高亮。
- Vim Syntastic
Vim 编辑器的插件,提供编译检查。
Visual Studio Code:
- Visual Studio Code extension
Microsoft Visual Studio Code 插件,包含语法高亮和 Solidity 编译器。
不再使用的:
- Mix IDE
基于 Qt 的 IDE,可以设计、调试和测试 Solidity 智能合约。
- Ethereum Studio
专门的网页 IDE,也提供一个完整以太坊环境的脚本访问。
- Visual Studio Extension
Microsoft Visual Studio Code 插件,包含 Solidity 编译器。
Solidity 工具¶
- Dapp
Solidity 语言的构建工具、包管理器以及部署助手。
- Solidity REPL
一个命令行控制台,可以让你立刻尝试 Solidity 语言。
- solgraph
可视化的 Solidity 控制流,并能高亮标明潜在的安全漏洞。
- Doxity
Solidity 语言的文档生成器。
- evmdis
EVM 反汇编程序,可以执行字节码的静态分析,能提供比 EVM 操作更高级的抽象。
- ABI to solidity interface converter
从智能合约的ABI生成合约接口的脚本。
- Securify
智能合约的全自动在线静态分析器,提供基于漏洞模式的安全报告。
- Sūrya
一个智能合约系统实用工具,提供大量可视化输出和有关合约结构的信息。 还支持查询函数调用图。
- EVM Lab
一个与EVM交互工具包, 包括VM,Etherchain API 以及 Gas 消耗 的跟踪查看器。
- Universal Mutator
A tool for mutation generation ,可配置的规则,支持Solidity和Vyper 。
备注
变量名称,注释和源代码格式等信息在编译过程中丢失,无法完全恢复原始源代码。 无法反编译智能合约以查看原始源代码。
第三方 Solidity 解析器¶
- solidity-parser
Solidity parser for JavaScript
- Solidity Grammar for ANTLR 4
Solidity grammar for the ANTLR 4 parser generator