├── LICENSE └── README.md /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2018 Phillip Goldberg 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # awesome-ethereum 2 | [![Awesome](https://awesome.re/badge.svg)](https://awesome.re) 3 | This is a curated resource for Ethreum, decentralization, and beyond 4 | 5 | ## Academic Resources 6 | 7 | ### Organizations 8 | * [IC3, The Initiative For CryptoCurrencies & Contracts at Cornell](http://www.initc3.org/) 9 | * [Decentralized Systems Lab @ UIUC](http://decentralize.ece.illinois.edu/) 10 | * [BEN - Blockchain Education Network](https://www.blockchainedu.org/) 11 | 12 | 13 | 14 | ### Books 15 | * [Mastering Ethereum](https://github.com/ethereumbook/ethereumbook) 16 | * [Mastering Bitcoin](https://github.com/bitcoinbook/bitcoinbook) 17 | 18 | ### Thought Pieces 19 | * [DAO Democracy](http://merkle.com/papers/DAOdemocracyDraft.pdf) 20 | * [Blockchain Governance: Programming Our Future](https://medium.com/@FEhrsam/blockchain-governance-programming-our-future-c3bfe30f2d74) 21 | 22 | 23 | 24 | 25 | ### Fundamentals 26 | * Ethereum ([White Paper](https://github.com/ethereum/wiki/wiki/White-Paper)) ([Yellow Paper](https://bravenewcoin.com/assets/Whitepapers/Ethereum-A-Secure-Decentralised-Generalised-Transaction-Ledger-Yellow-Paper.pdf)) 27 | * [How Does Ethereum Work Anyway?](https://medium.com/@preethikasireddy/how-does-ethereum-work-anyway-22d1df506369) 28 | * [Unnumerated - Nick Szabo](http://unenumerated.blogspot.com/) 29 | 30 | 31 | 32 | 33 | 34 | ## Programming 35 | 36 | ### Official 37 | * Docs 38 | * [Ethereum](https://github.com/ethereum/wiki) 39 | * [Geth](https://github.com/ethereum/go-ethereum/wiki/geth) 40 | * [Parity](https://github.com/paritytech/parity/wiki) 41 | * [Solidity](https://solidity.readthedocs.io/en/develop/) 42 | * [Ethereum Foundation](https://ethereum.org/) 43 | * [Ethereum Enterprise Alliance](https://entethalliance.org/) 44 | 45 | ### Getting Started 46 | 47 | * Ethereum Development Guide 48 | * [Part 1: Developing an Ethereum Document Certification Contract](https://medium.com/cryptronics/ethereum-development-guide-part-1-ad0c77c3683) 49 | * [Part 2: Interacting with smart contracts](https://medium.com/cryptronics/ethereum-development-guide-part-1-ad0c77c3683f) 50 | * [Part 3: Developing a web inteface for smart contracts](https://medium.com/cryptronics/ethereum-development-guide-part-3-c5a402bf8815) 51 | * [Solidity Baby Steps](https://github.com/fivedogit/solidity-baby-steps) 52 | 53 | 54 | 55 | ### In-Depth 56 | * [Diving Into The EVM](https://blog.qtum.org/diving-into-the-ethereum-vm-6e8d5d2f3c30) 57 | * [Part 2: How I Learned To Start Worrying About Storage Cost](https://medium.com/@hayeah/diving-into-the-ethereum-vm-part-2-storage-layout-bc5349cb11b7) 58 | * [Part 3: The Hidden Costs of Arrays](https://medium.com/@hayeah/diving-into-the-ethereum-vm-the-hidden-costs-of-arrays-28e119f04a9b) 59 | * [Part 4: Deciphering a Method Call](https://medium.com/@hayeah/how-to-decipher-a-smart-contract-method-call-8ee980311603) 60 | * [Part 5: Smart Contract Creation Process](https://medium.com/@hayeah/diving-into-the-ethereum-vm-part-5-the-smart-contract-creation-process-cb7b6133b855) 61 | * [Part 6: How Solidity Events Are Implemented](https://blog.qtum.org/how-solidity-events-are-implemented-diving-into-the-ethereum-vm-part-6-30e07b3037b9) 62 | * [How To Read Ethereum Storage](https://medium.com/aigang-network/how-to-read-ethereum-contract-storage-44252c8af925) 63 | 64 | 65 | 66 | ### Smart Contract Security 67 | * [Underhanded Solidity Contest](https://github.com/Arachnid/uscc) 68 | * [Mechanism Design Security in Smart Contracts](https://medium.com/@matthewdif/mechanism-design-security-in-smart-contracts-87f08555b38b) 69 | * [KEVM: A Complete Semantics of the Ethereum Virtual Machine](https://www.ideals.illinois.edu/handle/2142/97207) 70 | * [6 Solidity Vulnerabilities and how to avoid them](https://medium.com/loom-network/how-to-secure-your-smart-contracts-6-solidity-vulnerabilities-and-how-to-avoid-them-part-1-c33048d4d17d) 71 | * [How Formal Verification Can Ensure Flawless Smart Contracts](https://media.consensys.net/how-formal-verification-can-ensure-flawless-smart-contracts-cbda8ad99bd1) 72 | * [Smart Contract Best Practices](https://github.com/ConsenSys/smart-contract-best-practices) 73 | * [Inheritance Abuse](https://pdaian.com/blog/solidity-anti-patterns-fun-with-inheritance-dag-abuse/) 74 | * [Ethereum isn't Turing Complete and It Doesn't Matter Anyway (video)](https://www.youtube.com/watch?v=cGFOKTm_8zk) 75 | * [Thinking About Smart Contract Security](https://blog.ethereum.org/2016/06/19/thinking-smart-contract-security/) 76 | 77 | ### Libraries 78 | * [AragonOS](https://github.com/aragon/aragonOS) 79 | * [Zeppelin Solidity](https://github.com/OpenZeppelin/zeppelin-solidity) 80 | * [0x JS](https://github.com/0xProject/0x.js) 81 | * [Solidity Bytes Utils](https://github.com/GNSPS/solidity-bytes-utils) 82 | * [Modular Libraries](https://github.com/modular-network/ethereum-libraries) 83 | * [Simple Token Sale](https://github.com/skmgoldin/simple-token-sale) 84 | 85 | 86 | ## R&D 87 | * [Ethereum Research](https://ethresear.ch/) 88 | * [eWASM - Ethereum Falvoured WebAssembly](https://github.com/ewasm) 89 | 90 | 91 | ### State Channels 92 | * [State Channels - Jeff Coleman](http://www.jeffcoleman.ca/state-channels/) 93 | * [State Channel Wiki - Ledger Labs](https://github.com/ledgerlabs/state-channels/wiki) 94 | * [Spankchain POC State Channel](https://github.com/SpankChain/general-state-channels) 95 | 96 | 97 | 98 | ### EIPs/ERCs 99 | * [EIP 777: ](https://github.com/ethereum/EIPs/issues/777) 100 | * [ERC121: Proxy Standard](https://github.com/ethereum/EIPs/issues/121) 101 | 102 | ### Experimental Languages 103 | * [Intro to LLL](https://media.consensys.net/an-introduction-to-lll-for-ethereum-smart-contract-development-e26e38ea6c23) 104 | * [Vyper](https://github.com/ethereum/vyper) 105 | * [Pyramid Scheme](https://github.com/MichaelBurge/pyramid-scheme) 106 | * [Bamboo](https://github.com/pirapira/bamboo) 107 | 108 | 109 | ## Media 110 | ### Podcasts 111 | * [Epicenter](https://epicenter.tv/) 112 | * [Unconfirmed: Insights and Analysis From Top Minds in Crypto](https://itunes.apple.com/us/podcast/unconfirmed-insights-analysis-from-top-minds-in-crypto/id1347049808?mt=2) 113 | ### Newsletters 114 | * [Week In Ethereum](http://www.weekinethereum.com/) 115 | * [Proof of Work](https://proofofwork.substack.com/) 116 | * [ConsenSys Media](http://consensys.us11.list-manage.com/subscribe?u=947c9b18fc27e0b00fc2ad055&id=257df01285) 117 | ## Tools 118 | * [Metamask -- run Ethereum dApps in browser](https://metamask.io/) 119 | * [Truffle](https://trufflesuite.com) 120 | * [Ethereum Gas Price Estimator](https://chrome.google.com/webstore/detail/ethereum-gas-price-extens/innfmlnnhfcebjcnfopadflecemoddnp) 121 | * [DappHub toolkit](https://dapp.tools/) 122 | * [Remix - Online Solidity Compiler](https://ethereum.github.io/browser-solidity/) 123 | * [Mythril - Security Analysis Tool](https://github.com/ConsenSys/mythril) 124 | * [MAIAN - Finding The Greedy, Prodigal, and Suicidal Contracts at Scale](https://github.com/ConsenSys/mythril) 125 | 126 | 127 | 128 | 129 | --------------------------------------------------------------------------------