资源¶
Solidity IDE及编辑器¶
- 常用: - EthFiddle
- 基于浏览器的 IDE,可以编写和分享Solidity 代码,需要服务端。 
 
- Remix
- 基于浏览器的 IDE,集成了编译器和 Solidity 运行时环境,不需要服务端组件。 
 
- Solhint
- 一种静态检查器,提供安全和风格指南以及智能合约验证的最佳实践规则。 
 
- Solidity IDE
- 基于浏览器的 IDE,集成了编译器,支持 Ganache 和本地文件系统。 
 
- Ethlint
- 一种静态检查器,识别和修复 Solidity 中的风格以及安全问题。 
 
- Superblocks Lab
- 基于浏览器的 IDE, 集成了基于浏览器的虚拟机以及 Metamask ,可以一键部署到主网和测试网。 
 
 
- Atom: - Etheratom
- Atom 编辑器的插件,支持高亮、编译和运行时环境(兼容后端节点和虚拟机)。 
 
- Atom Solidity Linter
- Atom 编辑器的插件,提供 Solidity 语言的 Lint 检查(静态检查)。 
 
- Atom Solium Linter
- Atom 的可配置的 Solidity 静态检查器,基于 Solium(now Ethlint) 。 
 
 
- 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 工具¶
- ABI to Solidity interface converter
- A script for generating contract interfaces from the ABI of a smart contract. 
 
- 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