awesome-solidity
  
  
    Awesome Solidity 
    https://github.com/awesome-solidity/awesome-solidity
  
        Last synced: 2 days ago 
        JSON representation
    
- 
            
Resources
- Clean Contracts (wslyvh.com, Wesley van Heije, 2020) - Developer guide to writing clean smart contract code.
 - Docs - Official documentation.
 - Cheatsheet - Cheatsheet from the official docs.
 - Ethereum Wiki - The Ethereum Wiki.
 - Ethereum Stackexchange - Ethereum's Stackexchange board.
 - buildspace.so - Hands-on Web3 course especially for beginners. It is completely free and you get an NFT on completion.
 - cryptodevhub.io - Community-driven effort to unite like-minded people interested in Blockchain- and Crypto Technologies.
 - karmacoma-eth/sending-ether-cheat-sheet - Tips and best practices for sending Ether.
 - LearnXInY - Learn Solidity in 15 mins (for experienced devs).
 - Questbook - Questbook is building a University DAO where learning is always free. Starting with crypto-dev courses by leading devs.
 - Teach Yourself Web3 - Join a community of Web3 engineers & educators that can help you supercharge your way into Web3 development.
 - useweb3.xyz/tutorials - A curated list of free, community tutorials that are based around specific projects, tasks or challenges.
 - Best Practices for Smart Contract Development (yos.io, Yos Riady, 2019) - Developer handbook for smart contract developers.
 - Clean Contracts (wslyvh.com, Wesley van Heije, 2020) - Developer guide to writing clean smart contract code.
 - The Complete Guide to Full Stack Ethereum Development (dev.to, Nader Dabit, 2021) - Building Full Stack dApps with React, Ethers.js, Solidity, and Hardhat.
 - How to create an ERC20 Token and a Solidity Vendor Contract (medium.com, Emanuele Ricci, 2021) - Create your own ERC20 Token and a Token Vendor Contract that will handle the sell/buy process.
 - soliditydeveloper.com/blog - Concepts, guides, design patterns and more.
 - Capture the Ether - Game in which you hack Ethereum smart contracts to learn about security.
 - Trail of Bits - Public security audits by the Trail of Bits Team.
 - kauri.io - Archive of kauri community's content created with the goal to foster the spread of Ethereum development knowledge far and wide.
 - Solidity By Example - An introduction to the language with simple examples.
 - useWeb3 - Learn web3 development - A curated overview of the best and latest resources on Ethereum, Solidity and Web3 development.
 - Blockchain in Action - Book that teaches the essential principles of blockchain and how to create your own decentralized apps.
 - cryptocurrencyjobs.co - Job board for blockchain and cryptocurrency jobs.
 - cryptojobslist.com - Job board for blockchain and cryptocurrency jobs.
 - ethereum/solidity-examples - Loose collection of example code.
 - androlo/solidity-workshop - Comprehensive series of tutorials covering contract-oriented programming and advanced language concepts.
 - ExtropyIO/defi-bot - Tutorial for building DeFi arbitrage bots.
 - manojpramesh/solidity-cheatsheet - Cheat sheet and best practices.
 - topmonks/solidity_quick_ref - Syntax overview.
 - willitscale/learning-solidity - Complete guide on getting started, creating your own crypto, ICOs and deployment.
 - crytic/awesome-ethereum-security - Curated list of awesome Ethereum security references, guidance, tools, and more.
 - ethereum/solc-bin - Current and historical builds of the compiler.
 - crytic/building-secure-contracts - Guidelines and training material to write secure smart contracts.
 - crytic/not-so-smart-contracts - Examples of common vulnerabilities, including code from real smart contracts.
 - Crypto-Virus/cream-finance-exploit-example - Example implementation of the Cream Finance flashloan exploit.
 - d-xo/weird-erc20 - Minimal example implementations of ERC20 tokens with surprising/unexpected behaviour.
 - Ethereum Smart Contract Security Best Practices (Consensys) - General security philosophy, known attacks, and sample code.
 - OriginProtocol/security - Materials related to security: docs, checklists, processes.
 - securing/SCSVS - Smart Contract Security Verification Standard.
 - sigp/solidity-security-blog - Comprehensive list of known attack vectors and common anti-patterns.
 - MixBytes - Public security audits by the MixBytes Team.
 - alephao/solidity-benchmarks - Benchmarks of popular implementations of ERC standards.
 - cyrusadkisson/solidity-baby-steps - Comprehensive collection of contract examples.
 - flashbots/simple-arbitrage - Example arbitrage bot using Flashbots.
 - fravoll/solidity-patterns - A collection of patterns and best practices for smart contract development.
 - libevm/subway - A practical example on how to perform sandwich attacks on Ethereum.
 - lsaether/bonding-curves - Smart contracts for bonding curves (aka curve bonded tokens).
 - miguelmota/solidity-idiosyncrasies - Common gotchas, pitfalls, limitations, and idiosyncrasies.
 - andrecronje/rarity - D20srd reference implementation.
 - axieinfinity/ronin-smart-contracts - Axie Infinity Ronin contracts.
 - bancorprotocol/contract-solidity - Bancor Protocol contracts.
 - m1guelpf/lil-web3 - Simple, intentionally-limited versions of web3 protocols & apps.
 - pedrobergamini/flashloaner-contract - Smart contracts that operate arbitrages between Sushiswap and Uniswap.
 - raineorshine/solidity-by-example - A collection of short yet fully-functional contracts that demonstrate language features.
 - Abracadabra-money/magic-internet-money - Magic Internet Money (MIM) contracts.
 - compound-finance/compound-protocol - Compound Protocol contracts.
 - dharma-eng/dharma-smart-wallet - Smart wallet for earning interest on stablecoins while retaining custody of funds, with an added security backstop provided by Dharma Labs.
 - ensdomains/ens-contracts - Ethereum Name Service (ENS) contracts.
 - graphprotocol/contracts - Graph Protocol Contracts.
 - OlympusDAO/olympus-contracts - OlympusDAO contracts.
 - smartcontractkit/LinkToken - LINK token contracts for the Chainlink Network.
 - sushiswap/kashi-lending - Kashi Lending platform contracts.
 - Synthetixio/synthetix - Synthetix smart contracts.
 - wyvernprotocol/wyvern-v3 - Core smart contracts for Wyvern v3, a decentralized digital asset exchange protocol.
 - ethereum-boilerplate/ethereum-boilerplate - React components and hooks to build dApps fast without running your own backend.
 - NodeFactoryIo/solidity-node-docker-starter - Github template with Docker containers for building dApps with Truffle and Node.js as backend server.
 - rhlsthrm/typescript-solidity-dev-starter-kit - Starter kit for developing, testing, and deploying smart contracts with a full Typescript environment.
 - tomhirst/solidity-nextjs-starter - A full-stack dApp starter built with Next.js (React).
 - transmissions11/foundry-template - Streamlined template for getting started with Foundry and Solmate.
 - wighawag/template-ethereum-contracts - Template to develop smart contracts.
 - ZumZoom/solidity-template - Hardhat template with preconfigured Github Actions and Coveralls support.
 - Mastering Ethereum - Mastering Ethereum is a book for developers, offering a guide to the operation and use of the Ethereum, Ethereum Classic, RootStock (RSK) and other compatible EVM-based open blockchains.
 - OpenZeppelin/damn-vulnerable-defi - A set of challenges to hack implementations of DeFi in Ethereum.
 - OpenZeppelin/ethernaut - Ethernaut is a Web3/Solidity based wargame to be played in the Ethereum Virtual Machine. Each level is a smart contract that needs to be 'hacked'.
 - sushiswap/sushiswap - Sushiswap smart contracts.
 - Clean Contracts (wslyvh.com, Wesley van Heije, 2020) - Developer guide to writing clean smart contract code.
 - ethereum/solidity - Source code.
 - paulrberg/solidity-template - Github template for writing contracts (uses: Hardhat, TypeChain, Ethers, Waffle, Solhint, Solcover, Prettier Plugin Solidity).
 - Clean Contracts (wslyvh.com, Wesley van Heije, 2020) - Developer guide to writing clean smart contract code.
 - Clean Contracts (wslyvh.com, Wesley van Heije, 2020) - Developer guide to writing clean smart contract code.
 - Clean Contracts (wslyvh.com, Wesley van Heije, 2020) - Developer guide to writing clean smart contract code.
 - Clean Contracts (wslyvh.com, Wesley van Heije, 2020) - Developer guide to writing clean smart contract code.
 - Clean Contracts (wslyvh.com, Wesley van Heije, 2020) - Developer guide to writing clean smart contract code.
 - Clean Contracts (wslyvh.com, Wesley van Heije, 2020) - Developer guide to writing clean smart contract code.
 - Clean Contracts (wslyvh.com, Wesley van Heije, 2020) - Developer guide to writing clean smart contract code.
 - Clean Contracts (wslyvh.com, Wesley van Heije, 2020) - Developer guide to writing clean smart contract code.
 - Clean Contracts (wslyvh.com, Wesley van Heije, 2020) - Developer guide to writing clean smart contract code.
 - Teach Yourself Web3 - Join a community of Web3 engineers & educators that can help you supercharge your way into Web3 development.
 - web3.career - Job board for web3 jobs.
 - Clean Contracts (wslyvh.com, Wesley van Heije, 2020) - Developer guide to writing clean smart contract code.
 - Clean Contracts (wslyvh.com, Wesley van Heije, 2020) - Developer guide to writing clean smart contract code.
 - Clean Contracts (wslyvh.com, Wesley van Heije, 2020) - Developer guide to writing clean smart contract code.
 - Clean Contracts (wslyvh.com, Wesley van Heije, 2020) - Developer guide to writing clean smart contract code.
 - Clean Contracts (wslyvh.com, Wesley van Heije, 2020) - Developer guide to writing clean smart contract code.
 - Clean Contracts (wslyvh.com, Wesley van Heije, 2020) - Developer guide to writing clean smart contract code.
 - Clean Contracts (wslyvh.com, Wesley van Heije, 2020) - Developer guide to writing clean smart contract code.
 - Solidity and Vyper cheat sheet - Review syntax of both languages side-by-side.
 - Clean Contracts (wslyvh.com, Wesley van Heije, 2020) - Developer guide to writing clean smart contract code.
 - Clean Contracts (wslyvh.com, Wesley van Heije, 2020) - Developer guide to writing clean smart contract code.
 - Clean Contracts (wslyvh.com, Wesley van Heije, 2020) - Developer guide to writing clean smart contract code.
 - Clean Contracts (wslyvh.com, Wesley van Heije, 2020) - Developer guide to writing clean smart contract code.
 - Clean Contracts (wslyvh.com, Wesley van Heije, 2020) - Developer guide to writing clean smart contract code.
 - crypto.jobs - CryptoJobs is the #1 website for blockchain jobs.
 - austintgriffith/scaffold-eth - Github template providing an Ethereum dev stack focused on fast product iterations.
 - trusttoken/smart-contracts - TrustToken smart contracts.
 - gakonst/dapptools-template - Forkable template to get you started with Dapp Tools.
 - Uniswap/uniswap-v3-core - Core smart contracts of Uniswap v3.
 
 - 
            
Libraries
- Solidity Collections - Collections of code snippets and utility libraries.
 - 0age/AttributeRegistry - 1616 Attribute Registry Standard - interface, tests and implementation.
 - 0age/HomeWork - An autonomous utility for finding, sharing and reusing home addresses for contracts.
 - 0age/Spawner - Spawn EIP 1167 minimal proxies with an included initialization step during contract creation.
 - alexvansande/ENSTools - A set of contracts to extend ENS functionality to other smart contracts.
 - Arachnid/solidity-stringutils - Basic string utilities for Solidity.
 - dapp-bin - Ethereum repo providing implementations for many common data structures and utilities in Solidity, Serpent and LLL.
 - dapphub/dappsys - Contract system framework for flexible multi-contract dapps.
 - dmihal/hardhat-interface-generator - Hardhat plugin to automatically generate interfaces from code.
 - gelatodigital/auto-top-up - Automatically top up multiple ETH addresses once their ETH balance falls below a certain threshold.
 - ItsNickBarry/hardhat-abi-exporter - Export contract ABIs on compilation via Hardhat.
 - Keydonix/uniswap-oracle - General purpose price feed oracle built on Uniswap v2 that uses merkle proofs under the hood.
 - optionality/clone-factory - Simple clone contract factory. Install a master copy of a contract, then easily (cheaply) create clones with separate state.
 - makerdao/multicall - Aggregate multiple constant function call results into one.
 - mattdf/RingCrypto - Ring signature related implementations for Ethereum.
 - mds1/solidity-trigonometry - Library with basic trigonometry functions.
 - Modular Libraries - Deployed utility libraries to use in your smart contracts.
 - NTA-Capital/SolMATe - Libraries for floating-point matrix manipulation, linear algebra operations, and vector math.
 - OpenZeppelin/openzeppelin-contracts - A library for secure smart contract development.
 - OpenZeppelin/openzeppelin-contracts-upgradeable - Upgradeable variant of OpenZeppelin Contracts, meant for use in upgradeable contracts.
 - pcaversaccio/xdeployer - Hardhat plugin to deploy your smart contracts across multiple EVM chains with the same deterministic address.
 - rugpullindex/indexed-sparse-merkle-tree - Dapptools-ready and gas-optimized implementation of a sparse merkle tree.
 - Smart Contracts Skeleton - Preconfigured skeleton repository for building or starting with development of Smart contracts.
 - solana-labs/solana-solidity.js - Compile, deploy, and use contracts on Solana.
 - Solidity Standard Library - Standard library (Array, random, math, string).
 - solidstate-network/solidstate-solidity - Upgradeable-first smart contract development library.
 - ThirdWeb/Contracts - Pre-built contracts for Token, NFT, Governance and Marketplace from ThirdWeb.
 - truffle-assertions - Adds additional assertions and utilities used in testing smart contracts with truffle.
 - studydefi/money-legos - NPM package that provides you with the mainnet addresses, ABIs, and Solidity interfaces for popular DeFi protocols.
 - transmissions11/solmate - Modern, opinionated and gas optimized building blocks for smart contract development.
 - Uniswap/merkle-distributor - Smart contract that distributes a balance of tokens according to a merkle root.
 - wbobeirne/eth-balance-checker - Smart contract and library pair that allows you to check for multiple ERC20 and Ether balances across multiple addresses in a single RPC call.
 - Unicode Ethereum Project - Libraries and contracts for Unicode data, algorithms, and utilities.
 - rugpullindex/indexed-sparse-merkle-tree - Dapptools-ready and gas-optimized implementation of a sparse merkle tree.
 - hifi-finance/prb-math - Smart contract library for advanced fixed-point math.
 - EthWorks/Waffle - Library for writing and testing smart contracts.
 - 0xcert/ethereum-erc721 - Non-fungible token implementation for Ethereum-based blockchains.
 - maple-labs/erc-20 - Maple implementation of the ERC-20 standard.
 - mzhu25/sol2string - `LibUintToString` library for efficiently converting `uint256` values to strings.
 - Uniswap/uniswap-v2-periphery - Peripheral smart contracts for interacting with Uniswap V2.
 
 - 
            
Tools
- Hardhat - Development environment to compile, deploy, test, and debug your Ethereum software.
 - Remix - Online realtime compiler and runtime.
 - DappReader
 - MythX - Detection for security vulnerabilities in Ethereum smart contracts throughout the development life cycle
 - Moesif - Service that provides Ethereum smart contract analytics and anomaly detection for DApps and DAPIs.
 - dapphub/dapptools - Command-line-friendly tools for blockchain development.
 - eagr/sol-repl - Lightweight, feature-rich REPL for instant feedback.
 - Anish-Agnihotri/MultiFaucet - MultiFaucet drips ETH, tokens, and NFTs across many testnet networks, at once.
 - weiroll/weiroll - A simple and efficient operation-chaining/scripting language for the EVM.
 - eth-brownie/brownie - Python-based development and testing framework for smart contracts targeting the Ethereum Virtual Machine.
 - create-truffle-dapp - CLI to create and deploy Truffle projects with no configuration.
 - dapp-scratch - CLI for generating javascript modules from Contracts for Decentralized Apps.
 - instant-dapp-ide - Complete Dapp and Solidity development environment as a docker image you can run from command line.
 - raineorshine/solidity-repl - REPL CLI.
 - SIF - Code generation from the AST, analyse and instrument source code.
 - Smart Contract Sanctuary - A home for ethereum smart contracts, all verified smart contracts from Etherscan.
 - naddison36/sol2uml - Unified Modeling Language (UML) class diagram generator for smart contracts.
 - sol-merger - Merges all imports into single file for contracts.
 - solgraph - Visualize control flows for smart contract security analysis.
 - solidity-docgen - Documentation generator for Solidity projects.
 - tintinweb/solidity-shell - An interactive Solidity shell with lightweight session recording.
 - Aniket-Engg/sol-profiler - CLI tool to list & store solidity smart contract methods attributes.
 - Aniket-Engg/sol-verifier - Verify solidity smart contracts on Etherscan.
 - cleanunicorn/abi2signature - Use the ABI of a smart contract to find out the function signatures.
 - crytic/solc-select - CLI to quickly switch between compiler versions.
 - DiverseSolutions/Diverse-Eth-Calculator - Website with Ethereum unit conversion & utility components.
 - duaraghav8/Ethlint - Linter to identify and fix style & security issues in smart contracts.
 - ItsNickBarry/hardhat-contract-sizer - Output contract sizes with Hardhat.
 - prettier-solidity/prettier-plugin-solidity - Prettier plugin for automatically formatting your code.
 - protofire/solhint - Solidity linter that provides security, style guide and best practice rules for smart contract validation.
 - rkalis/truffle-plugin-verify - Truffle plugin to verify smart contracts on Etherscan from the Truffle command line.
 - sambacha/prettier-config-solidity - Prettier config optimized to reduce AST churn & conform to the Solidity spec.
 - sc-forks/solidity-coverage - Code coverage tool.
 - Tenderly/tenderly-cli - Speed up your development with error stack traces.
 - tintinweb/solgrep - A scriptable semantic grep utility for Solidity.
 - a16z/metamorphic-contract-detector - Check whether a given contract exhibits red flags that could indicate the potential for metamorphism instead of immutability.
 - Echidna - Define properties for your smart contract then use fuzzing to catch security bugs.
 - Manticore - Detects many common bug types, and can prove correctness properties with symbolic execution.
 - Mythril - Security analysis tool for smart contracts.
 - ethereum/sourcify - Re-compiler that can be used to verify that bytecode corresponds to certain source code.
 - eth-sri/securify2 - Tool for analyzing smart contracts for vulnerabilities and insecure coding.
 - Slither - Static analyzer with support for many common bug types, including visualization tools for security-relevant information.
 - dethcrypto/ethereum-code-viewer - View the source of deployed Ethereum contracts in VSCode.
 - DappReader
 - Laika - Make requests to smart contracts without the hassle of writing a single line of code.
 - Tenderly - Easily monitor your smart contracts with error tracking, alerting, performance metrics, and detailed contract analytics.
 - Embark - Framework that allows you to easily develop and deploy DApps.
 - gakonst/foundry - Blazing fast, portable and modular toolkit for Ethereum application development written in Rust.
 - EthereumStudio - Standalone desktop IDE.
 - Truffle - Development environment, testing framework and asset pipeline for Ethereum.
 
 - 
            
Editor Plugins
- Ethereum Security Bundle - A meta-extension bundling marketplace plugins for secure Ethereum smart contract development.
 - Solidity Visual Developer - Visual Security audit, Security centric syntax and semantic highlighting, detailed class outline, UML diagram generator, and many more features.
 - Solidity Contract Flattener - Flatten Solidity Contracts using truffle-flattener
 - Truffle for VS Code - Truffle for VS Code simplifies how you create, build, debug and deploy smart contracts on Ethereum and all EVM-compatible blockchains and layer 2 scaling solutions.
 - uml2solidity - Model smart contracts with UML.
 - emacs-solidity - Solidity mode for Emacs.
 - company-solidity - Autocomplete with company-mode.
 - intellij-solidity - Solidity plugin for IntelliJ.
 - SublimeEthereum - Solidity syntax for SublimeText.
 - solidity.vim - Vim compiler plugin.
 - vim-solidity - Vim syntax file.
 - sol-profiler-vscode - Visual Code Extension to generate & store smart contract methods profile.
 - vscode-solidity - Visual Studio Code language support extension.
 - ConsenSys/vscode-solidity-auditor - Language support and visual security auditor for Visual Studio Code.
 - ConsenSys/vscode-solidity-auditor - Language support and visual security auditor for Visual Studio Code.
 
 - 
            
Languages
- deno-web3/solc - Solidity bindings for Deno.
 - solc-js - JavaScript bindings for the Solidity compiler.
 - solidity-parser - Solidity parser built in JavaScript.
 - rust-ethereum/ethabi - Encode and decode smart contract invocations.
 - sulk - Configurable contract compilation.
 - Soltsice - Generates strongly-typed TypeScript classes for contracts from Truffle artifacts with a single command.
 - ocaml-solidity - OCaml library providing a parser, a typechecker and miscellaneous utilities for manipulating contracts.
 - hyperledger-labs/solang - A Solidity-to-WASM-and-BPF compiler written in Rust.
 - TypeChain - TypeScript bindings for Ethereum smart contracts.
 
 
            Programming Languages
          
          
        
            Sub Categories
          
          
            Keywords
          
          
              
                solidity
                65
              
              
                ethereum
                64
              
              
                smart-contracts
                26
              
              
                blockchain
                16
              
              
                security
                9
              
              
                evm
                8
              
              
                truffle
                7
              
              
                dapp
                6
              
              
                buidler
                5
              
              
                web3
                5
              
              
                hardhat
                4
              
              
                ethereum-contract
                4
              
              
                smart-contract
                4
              
              
                vyper
                4
              
              
                defi
                4
              
              
                solc
                4
              
              
                abi
                3
              
              
                eth
                3
              
              
                library
                3
              
              
                testing
                3
              
              
                etherscan
                3
              
              
                wow
                3
              
              
                solidity-contracts
                3
              
              
                react
                3
              
              
                dapps
                2
              
              
                nodejs
                2
              
              
                typescript
                2
              
              
                program-analysis
                2
              
              
                symbolic-execution
                2
              
              
                developer-tools
                2
              
              
                prettier
                2
              
              
                static-analysis
                2
              
              
                sol-profiler
                2
              
              
                parser
                2
              
              
                solidity-compiler
                2
              
              
                cli
                2
              
              
                ether
                2
              
              
                repl
                2
              
              
                deployment
                2
              
              
                strings
                2
              
              
                gas-optimization
                2
              
              
                merkle-tree
                2
              
              
                smart-contract-tools
                2
              
              
                merkletree
                2
              
              
                sparse-merkle-tree
                2
              
              
                best-practices
                2
              
              
                vscode-extension
                2
              
              
                vscode
                2
              
              
                compiler
                2
              
              
                rust
                2