本文列出2019年最新整理的用於區塊鏈開發的43種流行的開發庫、開發工具與開發框架。
1、MetaMask
人人都知道MetaMask。MetaMask是一個瀏覽器擴展,可以讓你用普通的瀏覽器訪問以太坊區塊鏈。
2、Mist
Mist瀏覽器是以太坊官方瀏覽器,內置訪問以太坊區塊鏈的能力。
官網:https://github.com/ethereum/mist
3、Remix IDE
Remix是以太坊官方開發的Solidity在線集成開發環境,你可以直接在瀏覽器中編寫Solidity代碼、編譯、
調試以及部署合約。
4、EthFiddle
你可以使用EthFiddle在瀏覽器中直接編寫、編譯並調試Solidtity代碼,就像jsfiddle的孿生兄弟。
5、Truffle開發框架
Truffle是最流行的以太坊開發框架,它是一個開發環境,包含測試框架以及以太坊資源處理流水線。
官網:https://truffleframework.com
教程:
6、Embark
Embark是一個用來快速開發、部署DApp的框架,它繼承了EVM區塊鏈、IPFS、Whisper以及Orbit的支持。
7、Populus
Populus是一個以太坊智能合約開發框架。
官網:http://populus.readthedocs.io
8、etherlime
etherlime是一個基於ethers.js實現的以太坊開發與部署框架,沒有使用常規的web3.js。
官網:https://etherlime.readthedocs.io
9、dot-abi-cli
Dot-abi-cli是一個用於構建智能合約命令行工具的開發框架,它可以幫助你快速實現一個
可以訪問智能合約的命令行工具。
官網:https://github.com/cryppadotta/dotta-license/tree/master/dot-abi-cli
10、web3.js
大名鼎鼎的web3.js封裝了以太坊JSON RPC接口規範,你可以使用web3.js訪問本地或遠端的
以太坊節點。
官網:https://github.com/ethereum/web3.js
中文用戶手冊:
11、pyethereum
以太坊創始人Vitalik Buterin開發的Pyethereum庫,是以太坊項目的Python核心庫。
官網:https://github.com/ethereum/pyethereum
12、web3j
Web3j是一個輕量級的Java/Android庫,用來在Java應用中訪問以太坊節點與智能合約。
官網:https://github.com/web3j/web3j
教程:web3j以太坊開發詳解
13、ether_sql
一個用於將以太坊區塊鏈數據存入SQL數據庫的Python庫,可以用來實現區塊鏈瀏覽器或執行數據分析任務。
官網:https://github.com/analyseether/ether_sql
14、EthereumJS VM
EthereumJS VM是以太坊虛擬機的JavaScript實現,可以用來創建、操作並對以太坊交易進行簽名。
官網:https://github.com/ethereumjs/ethereumjs-vm
15、Nethereum
Nethereum是一個開源的用於集成區塊鏈支持的.Net開發庫,它簡化了在.Net應用中訪問以太坊節點上的智能合約
的實現難度。
教程:c#以太坊開發詳解
16、JSON RPC API
JSON RPC API是無狀態、輕量級的遠程過程調用(RPC)協議,它定義了若干數據結果以及相關的處理規則。
官網:https://github.com/ethereum/wiki/wiki/JSON-RPC
規範中文版:
17、ethereum-abi-ui
這個工具簡化了以太坊合約交互界面的開發,可以與任何UI框架結合使用,只有很小的外部依賴。
官網:https://github.com/hiddentao/ethereum-abi-ui
18、cava
Cava是一個用來幫助區塊鏈及其他去中心化軟件開發的開發庫及開發工具,支持Java、Kotlin以及
其他JVM語言。
官網:https://github.com/consensys/cava
19、Ethereum Name Service
這是一個安全的、去中心化的資源名稱解析服務。
20、Go Ethereum
Go Ethereum,也被成爲Geth,可用作獨立的以太坊客戶端,也可以作爲一個開發包嵌入Go、Android或iOS項目中。
21、Parity
Parity是使用一種新出現的底層語言Rust開發的以太坊客戶端,它是與以太坊區塊鏈交互的最快、最安全的方式。
22、Prysm
由Prsmatic實驗室開發,是Geth節點軟件分片方案的第一個實現,之前被稱爲Geth-Sharding。
官網:https://github.com/prysmaticlabs/prysm
23、Status
Status是一個移動端的以太坊客戶端,可以讓你隨時隨地訪問以太坊整個生態系統。
24、ethereumj
EthereumJ是一個以太坊協議的純Java實現,可以嵌入任何Java或Scala項目中。
官網:https://github.com/ethereum/ethereumj
25、cpp-ethereum
包含一組開發工具,例如以太坊C++客戶端、開發庫、以及其他工具。
26、Solidity
Solidity是一個面向合約的高層開發語言,用於智能合約的實現。Solidity的設計受到
C++、Python以及JavaScript的影響。
官網:http://solidity.readthedocs.io
中文文檔:Solidity 0.5.8
27、Vyper
Vyper是一個實驗性質的智能合約開發語言,它的目標是安全、語言及編譯的簡化、以及可審計性。
官網:http://vyper.readthedocs.io
28、Liquidity
Liquidity是一個高層的Tezos區塊鏈智能合約開發語言,它使用OCaml語法,使用Michelson嚴格編譯。
官網:http://www.liquidity-lang.org
29、Ganache CLI
Ganache是Truffle開發套件中的一部分,它使用EthereumJS來模擬節點行爲,以便加速並簡化
以太坊應用的開發。
官網:https://truffleframework.com
30、ethpm-spec
EthPM是以太坊的包註冊中心,用來發布智能合約包。
官網:https://github.com/ethpm/ethpm-spec
31、Atom Solidity Linter
Atom Solidity Linter 是一個Atom編輯器插件,用來對Soldity代碼進行語法檢查。
32、Infura
Infura提供了API以及其他開發者工具,可以幫助開發者安全地訪問以太坊以及IPFS。
33、Lamden
Lamden是一個用於快速開發自定義區塊鏈及DApp的開發套件。
34、NeoCompiler Eco
用來開發、編譯、部署及測試NEO智能合約,支持Python、C#。
官網:https://neocompiler-eco.neoresearch.io
35、Mythril
Mythril是一個用來分析以太坊智能合約及DApp安全性的安全分析引擎及平臺,支持與常用IDE的集成。
36、SmartCheck
SmartCheck用來檢查智能合約的漏洞與不良行爲。它會在代碼中高亮可疑部分並給出問題的詳細解釋。
37、Oyente
Oyente是一個智能合約的分析與驗證工具,可以用來查找並識別你的代碼中的問題。
38、Securify
Securify是一個以太坊智能合約的安全掃描器,由ICE Center、ETH Zurich和ChainSecurity開發。
39、manticore
Manticore是一個符號執行工具,用來分析二進制代碼及智能合約。
官網:https://github.com/trailofbits/manticore
40、velma
Velma是一個實時Solidity調試工具,可以與VS Code集成。
官網:https://github.com/seeseplusplus/velma
41、Coq
Coq是一個形式化證明管理系統,可用來驗證你的代碼沒有bug。
42、Isabelle
Isabelle類似於COq,用來證明你的代碼沒有bug。
43、0x-monorepo
這是一個Solidity代碼覆蓋檢查工具,可以用來測試你的智能合約。由0x protocal開發。