以太坊開發者資源工具集合

以太坊開發者資源工具集合

來自專欄 HiBlock區塊鏈社區

1

開發語言、框架與工具

語言

  • Solidity - 官方推薦以太坊智能合約開發語言,也是目前最為主流的智能合約語言。
  • Bamboo - 是一種將智能合約描述為有限狀態機的語言,把智能合約看成一個狀態和交易的函數,同時生成一個新的狀態。
  • Vyper - 一種類 python 的面向合約編程語言,專註於以太坊虛擬機,著重於安全、簡潔、和穩定性。

框架

  • Truffle - 最為流行的智能合約開發、測試和部署框架。經常與 Ganache (也是由 Truffle 團隊開發) 一起搭配使用。
  • Embark - 一個 DApp 開發框架。
  • Populus - 用Python語言寫的智能合約開發框架。
  • Etherlime - 基於 ethers.js 的 DApp 開發框架。

集成開發環境(IDE)

  • Remix - 一個基於solidity語言的在線智能合約開發IDE,它提供從編譯,調試到部署的全流程支持。
  • Atom - Atom 編輯器可以結合 Atom Solidity Linter, Etheratom 等插件進行智能合約開發。
  • Pragma - 一個非常簡單的 solidity 合約在線 IDE。提供合約的編譯、部署與調用支持。
  • Superblocks Studio - Superblocks Studio 可以幫助你在線編寫、編譯與部署智能合約。目前處於 beta 版本。
  • Vim solidity - 有了這個,使用 vim 也可以寫愉快地寫 solidity 了。
  • Visual Studio Code - VSCode 是我日常用的最多的工具,好多支持 solidity 的插件。
  • Intellij Solidity Plugin - JetBrains IntelliJ Idea IDE 上用的 solidity 插件,支持語法高亮,格式化與代碼自動補全。

常用以太坊交互代碼庫

  • Web3.js - 以太坊官方的 Javascript API
  • Eth.js - 優化過的 Web3.js
  • Ethers.js - 更加完整的以太坊 Javascript 代碼庫,包括 Web3.js 沒有的足記詞與 HD 錢包支持等。
  • Web3.py - Python 版的 Web3
  • Web3.php - PHP 版的 Web3
  • Web3j - Java 版的 Web3
  • Nethereum - .Net 版的 Web3
  • Ethereum.rb - Ruby 版的 Web3
  • Web3.hs - Haskell 版的 Web3
  • KEthereum - Kotlin 版的 Web3
  • Pyethereum - Python 版的以太坊核心客戶端
  • Drizzle - 基於 Redux 的用於鏈接以太坊的前端代碼庫
  • Eventeum - 以太坊智能合約事件和後端微服務之間的橋樑
  • Vortex - 可直接用於 DApp 的 Redux Store。通過 WebSockets 實現智能合約與後台數據的自動刷新。

相關工具

  • Truffle boxes - 一些打包好的組件
  • Local Raiden - 在 docker 容器中運行本地雷電網路以進行演示和測試
  • Private networks deployment scripts - 私有 PoA 網路的開箱即用部署腳本
  • Local Ethereum Network - 私有 PoW 網路的開箱即用部署腳本
  • Kaleido - 使用 Kaleido 啟動聯盟區塊鏈網路。非常適合 PoC 和測試
  • Cheshire - CryptoKitties API 和智能合約的本地沙箱實現
  • Solc - Solidity 編譯器
  • Solidity cli - 更快更好的編譯 Solidity
  • Ethereumjs - 以太坊實用的 javascript 代碼庫集合,比如 ethereumjs-util 和 ethereumjs-tx 等
  • Ethjs - 簡單好用的 JS 模塊
  • Eth lightwallet - 在 Node 和瀏覽器里用的以太坊輕錢包
  • RLP - RLP 編碼的 JS 版實現
  • Solium - 用於識別和修復 Solidity 中的代碼格式和安全問題
  • Ethereal - 一個命令行工具,用於管理以太坊中的常見任務
  • ABI decoder - 用於解碼以太坊交易中數據參數和事件的庫
  • Ethereum ABI UI - 根據以太坊合約 ABI 自動生成 UI 表單欄位和關聯的驗證器
  • Eth crypto - 用於以太坊的加密javascript 函數以及將它們與 web3js 和 solidity 一起使用的教程
  • Solidity flattener - 一個可以將工程中相互引用的合約合併到一個合約文件的工具
  • JS IPFS API - JS 實現的與 IPFS API 交互的代碼庫
  • Ganache - 具有 UI 的本地以太坊簡單實現
  • SpankCard - 瀏覽器里用的以太坊錢包
  • Parity Signer - 允許簽署交易的移動應用
  • py-eth - 以太坊 Python 語言工具集
  • Decode - 用以解析提交給本地 testrpc 節點的交易,使其更易讀,更易於理解

2

基礎架構相關

客戶端

  • Geth - Go 語言實現版本
  • Parity - Rust 語言實現版本
  • Cpp-ethereum - C++ 語言實現版本
  • Pyethapp - 基於 pyethereum 的 Python 語言實現版本
  • Trinity - 基於 py-evm 的 Python 語言實現版本
  • Ethereumjs - 基於 ethereumjs-vm 的 JS 實現版本
  • Ethereumj - Java 語言實現版本
  • Harmony - 基於 Ethereumj 的以太坊節點實現,EtherCamp出品
  • Seth - 命令行版的 MetaMask
  • Mustekala - 以太坊輕客戶端實現,MetaMask 團隊出品
  • Exthereum - Elixir 語言實現版本
  • EWF Parity - 兼容以太坊的能源區塊鏈客戶端
  • Quorum - 基於以太坊改造的關注數據隱私的授權訪問區塊鏈, JP Morgan 出品

存儲

  • Swarm - 去中心化存儲平台和內容分發服務,是以太坊 web3 技術棧的基礎層服務
  • IPFS - 去中心化存儲網路,致力於使網路更快,更安全,更開放的點對點超媒體協議
  • IPFS-Store - 帶檢索功能的 IPFS 服務 API
  • OrbitDB - 基於 IPFS 的去中心化資料庫

消息

  • Whisper - DApps 相互通信的通信協議, 以太坊 web3 技術棧的基礎層服務
  • DEVp2p Wire Protocol - 以太坊節點間的點對點通信

錢包

  • Metamask - 廣為實用的瀏覽器插件錢包
  • Gnosis multisig wallet - 多重簽名錢包
  • Mist - 官方錢包
  • MyEtherWallet - 安全方便地與區塊鏈交互的工具
  • Ether Address Lookup - 以太坊地址檢測 Chrome 瀏覽器插件
  • MyCrypto - 和 MyEtherWallet 類似的錢包工具
  • Portis - 方便用戶使用 DApp 的 web 端錢包
  • Toshi - 移動端 DApp 瀏覽器
  • Trust - 移動端以太坊錢包
  • Status - 基於 react 實現的移動端以太坊操作系統
  • imToken - 廣為使用的閉源錢包
  • WallETH - 開源的 Android 以太坊錢包
  • Trezor - 知名度很高的硬體錢包
  • Ledger - 支持多幣種的硬體錢包
  • KeepKey - 另一款硬體錢包

瀏覽器

  • Etherscan - 最為流行的以太坊瀏覽器,用於查看交易信息和合約代碼
  • Etherchain Light - 用於以太坊私鏈的區塊鏈瀏覽器
  • POA Explorer - 支持 POA 共識的以太坊瀏覽器
  • QuickBlocks - 訪問以太坊區塊鏈數據的工具集

gas 計算

  • EthGasStation - 估計交易費用和時間的網站
  • Petrometer - 計算特定賬戶每天所花費的 gas
  • CryptoProf - 智能合約 gas 消耗測量工具

相關服務

  • Oracalize - 預言機服務
  • Infura - 以太坊節點服務
  • Regis - 基於以太坊的數字資產登記平台
  • uPort - 身份認證
  • Netstats - 以太坊網路統計
  • ENS - 以太坊域名系統
  • Name Bazaar - 以太坊域名市場
  • Quantstamp - 安全審計
  • SmartCheck - solidity 源碼靜態分析
  • MD4 Online Hash Function - hash 演算法在線工具

測試網路水龍頭(faucet)

  • Rinkeby faucet
  • Kovan faucet
  • Ropsten faucet

合約代碼庫

  • Zeppelin - 經過測試的可重用合約庫比如 SafeMath、 ZeppelinOS 等
  • Modular Libraries - 另一個合約庫
  • DateTime Library - 省 gas 的solidity 時間處理庫
  • Aragon - DAO 協議
  • 0x - DEX 協議

測試

  • Solidity code coverage - solidity 單元測試覆蓋率
  • Solidity coverage - 另一個 solidity 代碼覆蓋率工具
  • Solidity function profiler - 列出合約函數
  • Espresso - solidity 測試框架
  • Eth tester - 以太坊應用測試套件
  • Cliquebait - 簡化驗收測試的工具
  • Hevm - 專為合約測試的 EVM 實現
  • Ethereum graph debugger - solidity 調試圖形化工具

安全

  • Mythril - 智能合約靜態安全分析
  • Oyente - 智能合約靜態安全分析
  • Porosity - 智能合約反編譯與靜態安全分析
  • Ethersplay - EVM 反彙編
  • Evmdis - EVM 反彙編
  • Hydra - 去中心化的合約安全分析框架
  • Solgraph - 圖形化智能合約處理流程
  • Manticore - 合約分析工具
  • Solidity security blog - 合約安全分析博客
  • Awesome Buggy ERC20 Tokens - 問題合約彙集
  • 智能合約最佳實踐 - by ConsenSys
  • Safety wiki - 以太坊安全

知識

  • CryptoZombies - 以太坊殭屍教程
  • Solidity idiosyncrasies - solidity 陷阱,局限性和特質
  • Ethereum development with Go - 用 go 語言進行以太坊開發
  • Chainshot building blocks - 免費課程
  • Delegate call - token 激勵的問答社區
  • Stackexchange - 問答社區
  • r/EthDev - Subreddit
  • Ethernaut - 遊戲中掌握智能合約安全

治理

  • Ethresear.ch - 參與以太坊研究工作的論壇, 包括但不限於: Casper, Sharding, EVM improvements, Crytpeconomics, Plasma and State-channels
  • Fellowship of Ethereum Magicians - 以太坊社區論壇
  • EIPs - 以太坊改進提案庫
  • ERCs - The Ethereum Request for Comment repository

參考資料

  • Wiki - 以太坊知識庫
  • Yellow Paper - 以太坊黃皮書
  • Beige Paper - 不帶那些特殊符號的以太坊黃皮書
  • 精通以太坊 - by Andreas M. Antonopoulos, Gavin Wood
  • EVM opcodes - 以太坊指令集
  • EVM illustrated - 以太坊虛擬機的解釋文檔
  • 4bytes - 合約 4 位元組方法簽名庫

內容來源:GitHub 整理:區塊鏈兄弟 原文鏈接:t.cn/Rdgc7QP

以下是我們的社區介紹,歡迎各種合作、交流、學習:)


推薦閱讀:

?ternity的智能合約介紹
共享經濟第一鏈ODYSSEY加密貨幣OCOIN(OCN),首次在六家主要加密貨幣交易所上市
有哪些比較權威的國外數字貨幣論壇?
真的是一個大陰謀,全世界都被收割了

TAG:以太坊 | 開發者 |