awesome-solidity-gh-pages

Awesome Solidity

A curated list of awesome Solidity resources, libraries, tools and more.

Please check the contribution guidelines for information on formatting and writing pull requests.

Contents

Resources

Official

Tutorials

Articles

Security

Audits

  • Trail of Bits - Public security audits by the Trail of Bits Team.

  • OpenZeppelin - Public security audits by the OpenZeppelin Security Team.

  • Consensys Diligence - Public security audits by the Consensys Diligence Team.

  • MixBytes - Public security audits by the MixBytes Team.

Examples

Educational

Deployed on Ethereum Mainnet

Templates

Books

  • Blockchain in Action - Book that teaches the essential principles of blockchain and how to create your own decentralized apps.

  • 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.

Practice

  • ChainShot - Hands-on learning with challenging coding tutorials.

  • 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'.

Jobs

Libraries

Tools

General

  • Anish-Agnihotri/MultiFaucet - MultiFaucet drips ETH, tokens, and NFTs across many testnet networks, at once.

  • Cryptofex - Standalone IDE and compiler.

  • dethcrypto/ethereum-code-viewer - View the source of deployed Ethereum contracts in VSCode.

  • eagr/sol-repl - Lightweight, feature-rich REPL for instant feedback.

  • EthFiddle - Find, share and embed contracts.

  • eth-brownie/brownie - Python-based development and testing framework for smart contracts targeting the Ethereum Virtual Machine.

  • Hardhat - Development environment to compile, deploy, test, and debug your Ethereum software.

  • Laika - Make requests to smart contracts without the hassle of writing a single line of code.

  • Remix - Online realtime compiler and runtime.

  • EthereumStudio - Standalone desktop IDE.

  • 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.

  • solgraph - Visualize control flows for smart contract security analysis.

  • sol-merger - Merges all imports into single file for contracts.

  • solidity-docgen - Documentation generator for Solidity projects.

  • Tenderly - Easily monitor your smart contracts with error tracking, alerting, performance metrics, and detailed contract analytics.

  • tintinweb/solidity-shell - An interactive Solidity shell with lightweight session recording.

Utility

Audit

  • 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.

  • MythX - Detection for security vulnerabilities in Ethereum smart contracts throughout the development life cycle

DevOps

  • Embark - Framework that allows you to easily develop and deploy DApps.

  • Moesif - Service that provides Ethereum smart contract analytics and anomaly detection for DApps and DAPIs.

Languages

JavaScript

TypeScript

  • Soltsice - Generates strongly-typed TypeScript classes for contracts from Truffle artifacts with a single command.

  • TypeChain - TypeScript bindings for Ethereum smart contracts.

Rust

OCaml

  • ocaml-solidity - OCaml library providing a parser, a typechecker and miscellaneous utilities for manipulating contracts.

Editor Plugins

Atom

Eclipse

Emacs

IntelliJ

Sublime

Vim

Visual Studio Code

👉 For a comprehensive list, see results for "Solidity" on Visual Studio Marketplace.

  • Ethereum Security Bundle - A meta-extension bundling marketplace plugins for secure Ethereum smart contract development.

  • sol-profiler-vscode - Visual Code Extension to generate & store smart contract methods profile.

  • vscode-solidity - Visual Studio Code language support extension.

  • 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.


License

To the extent possible under law, Ben Kremer has waived all copyright and related or neighboring rights to this work.

Last updated