ETH&EOS開發資源及工具集合(完整彙總版)
ETH開發資源篇
一、開發語言
· Solidity - 官方推薦以太坊智慧合約開發語言,也是目前最為主流的智慧合約語言
· Bamboo - 是一種將智慧合約描述為有限狀態機的語言,把智慧合約看成一個狀態和交易的函式,同時生成一個新的狀態
· Vyper - 一種類 python 的面向合約程式語言,專注於以太坊虛擬機器,著重於安全、簡潔、和穩定性
二、ERC 通證標準
· ERC-20 - 可替換資產的原始代幣合約
· ERC-223 - 向後相容ERC-20,
· ERC-721 - 非同質性代幣,可用來標記獨特的個人資產
· ERC-777 - 包含更大廣度的交易處理,具有高度可定製性
· ERC-827 - 允許轉讓通證並允許持有人允許第三方使用通證
· ERC-918 - Mineable Token Standard
· ERC-998 - 可拆解非同質化代幣,可包含多個ERC-721和ERC-20形式
· ERC-1155 - 可在一個智慧合約中定義多個物品(token)
· ERC-1400 - 證券通證標準,部分可互換代幣,該EIP標準具有能力進行強制轉移
· ERC-1404 - 為證券通證、通證化證券以及其它攜帶複雜要求的其它通證而準備
· ERC-165 - 建立標準方法以釋出和檢測智慧合約實現的介面
· ERC-725 - 金鑰管理和執行的代理合同,建立區塊鏈身份
· ERC-173 - 合同所有權的標準介面
(完整閱讀請下載文件,或關注BinSTD公號回覆關鍵詞“開發工具”免費獲取)
三、開發框架
· Truffle - 最為流行的智慧合約開發、測試和部署框架,經常與 Ganache (
· Embark - 一個 DApp 開發框架
· Populus - 用Python語言寫的智慧合約開發框架
· Etherlime - 基於 ethers.js 的 DApp 開發框架
· Parasol - 敏捷智慧合約開發環境
四、整合開發環境(IDE)
· Remix - 一個基於solidity語言的線上智慧合約開發IDE,它提供從編譯,除錯到部署的全流程支援
· Atom - Atom 編輯器可以結合 Atom Solidity Linter, Etheratom 等外掛進行智慧合約開發
· Pragma - 一個非常簡單的 solidity 合約線上 IDE。提供合約的編譯、部署與呼叫支援
· Superblocks Studio - Superblocks Studio 可以幫助你線上編寫、編譯與部署智慧合約
· Vim solidity - 有了這個,使用 vim 也可以寫愉快地寫 solidity
· Visual Studio Code - VSCode 是***常用的最多的工具,好多支援 solidity 的外掛
· Intellij Solidity Plugin - JetBrains IntelliJ Idea IDE 上用的 solidity 外掛,支援語法高亮,格式化與程式碼自動補全
· Eth Fiddle - 由The Loom Network開發的IDE,允許編寫、編譯和除錯智慧合約,易於共享和查詢程式碼段
五、常用以太坊互動程式碼庫
· 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 節點的交易,使其更易讀,更易於理解
· Supermax - 提供以太坊上智慧合約活動和事件日誌的實時資料反饋
七、客戶端
· 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 演算法線上工具
十四、Layer2 架構的開發者指南
· Learn Plasma - 涵蓋所有的Plasma變種(MVP/Cash/Debit)
· Plasma MVP - OmiseGO團隊對Plasma最小可行性產品的研究實施
· Plasma Cash - Plasma Cash簡單實施
· POA Network - 使用POA權威證明機制的以太側鏈
· Loom Network - 允許基於以太坊的Solidity應用程式在公共、被許可的和私有鏈上執行
十五、測試網路水龍頭
· Rinkeby faucet
· Kovan faucet
· Ropsten faucet
十六、合約程式碼庫
· Zeppelin - 經過測試的可重用合約庫比如 SafeMath、 ZeppelinOS 等
· cryptofin-solidity- 一系列Solidity庫,用於在以太坊上建立安全和高效的智慧合約
· 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 除錯圖形化工具
· Solhint - 為智慧合約驗證提供安全性,樣式指南和最佳實踐規則
十八、安全工具
· Mythril - 智慧合約靜態安全分析
· Oyente - 智慧合約靜態安全分析
· Porosity - 智慧合約反編譯與靜態安全分析
· Ethersplay - EVM 反彙編
· Evmdis - EVM 反彙編
· Hydra - 去中心化的合約安全分析框架
· Solgraph - 圖形化智慧合約處理流程
· Manticore - 合約分析工具
· Solidity security blog - 合約安全分析部落格
· Awesome Buggy ERC20 Tokens - 問題合約彙集
· 智慧合約最佳實踐 - by ConsenSys
· Safety wiki - 以太坊安全
十九、隱私
ZoKrates - 適用於以太坊的零知識證明工具箱
二十、開發知識相關
· 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
EOS開發資源篇
一、文件
· EOSIO - EOS開發者門戶
· EOS Docs - EOS開發文件資源
· EOSIO StackExchange - EOSIO堆疊交換
· EOS Bootstrap - EOS課程及教育資源
· Eostutorials - 適應不同技能水平的EOS教程網站
二、基礎設施/ DevOps
· EOS Node Tools - EOS節點工具
· EOSIO Docker - 簡單快速地設定EOS.IO
· EOS Test Cave - EOS驗證的自動化測試框架
· Block Matrix - EOS 出塊節點切換指令碼
· EOSIO AWS Kinesis - 設定AWS Kinesis 外掛 ,從而輕鬆收集,處理和分析實時流資料
· EOS Web Sockets - 為EOS建立Web套接字
· PatronEOS - 用於EOS節點的RPC檢查點
· Pitreos - EOS的時間點恢復
· Demux - 區塊鏈應用程式的確定性事件源狀態和副作用處理
· EOS 節點監控器 - 觀察和過濾EOS節點事務/操作並推送到RabbitMQ,MongoDB,0MQ等
· EOSIO GraphQL - 為EOSIO區塊鏈部署GraphQL API + MongoDB
· EOSpace - 同步 EOS 區塊鏈資料到 MongoDB 資料庫
· EOSIO MongoDB 查詢 - 快速為EOSIO區塊鏈建立複雜的MongoDB查詢
· EOSIO Kafka外掛 - 利用Kaftka豐富的所有實時功能
EOS Mechanics - 用於基準合同和公用事業
· EOS RabitMQ 外掛
· EOS ZeroMQ Plugin
· Benchmark工具
三、開發工具
· CLEOS-命令列介面工具
· NODEOS - 核心EOSIO節點守護程式,可以配置外掛來執行節點
· KEOSD - 將EOSIO金鑰安全儲存在錢包中的元件
· EOSC -跨平臺命令列工具
· Wasm Dec - 將WebAssembly二進位制檔案轉換為C的程式
· FC - 提供一組用於開發非同步庫的實用程式庫
· Wabt開發套件 - WebAssembly的一套工具
· EOSIO合同 - 智慧合約開發套件
· EOSFactory-Python所寫的EOS開發/測試套件
· EOSJS - EOS區塊鏈的通用庫
· EOSJS Browser - 一個建議版本的EOSJS
· EOSIO Boilerplate - EOSIO樣板專案,包含UI和Smart Contract程式碼,以及初始化和啟動必要的所有元件
· EOS Helper - 一份有用的指令碼列表
· EOS Blox - 世界上第一套提供定製智慧合約的Web元件
· Ping EOS - 在EOS / React.js之間實現ping
· EOS通訊 - node.js模組,允許在EOS平臺上進行鏈加密通訊
· EOS Encrypt - 允許加密和解密訊息
四、瀏覽器
· Bloks.io - 用於跟蹤網路上的所有型別的操作
· eosflare - EOS區塊瀏覽器
· eospark - 專業易用的EOS區塊瀏覽器
· MyEOSKit - EOS區塊瀏覽器
五、Wrappers, APIs & SDKs
· EOS Scala Wrapper - EOS RPC API的Scala包裝器
· EOS Java Wrapper - EOS RPC呼叫的Java實現
· EOS Go - EOS Go語言API庫
· EOSpy - 進行中,能在不編譯程式碼的情況下執行所有cleos get函式
· EOS Sharp - EOS區塊鏈的C#客戶端庫
· EOS PHP - 適用於EOS API的PHP Wrapper
· PHP SDK - 適用於EOS RPC API的PHP SDK
· JVM庫 - 用於JVM的EOS庫,主要用於Android開發
· Swift庫 - 一個用於與EOS互動的開源框架,用Swift編寫
· EOS API 平臺 - EOS API服務平臺
六、測試網路
· Jungle - 生態系統中最古老,最可靠的測試網之一,已成為EOS開發社群的支柱
· CryptoKylin - 一個開發人員友好的測試網路
· EOS Debug - 測試網路使用指南
七、安全
八、其它工具
· https://github.com/eoseoul/eos-ramcost, Adjusting supply of a token and connector balance of bancor during final phase of boot