Links

awesome-solidity-gh-pages

Awesome Solidity

awesome list badge
build status badge
GitHub contributors
pull requests welcome badge
support via gitcoin badge
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
  • androlo/solidity-workshop - Comprehensive series of tutorials covering contract-oriented programming and advanced language concepts.
  • buildspace.so - Hands-on Web3 course especially for beginners. It is completely free and you get an NFT on completion.
  • Cadena - Tutorials for building smart contracts, dapps, on multiple chains and earn a Cadena NFT Certificate.
  • CryptoZombies - Interactive code school that teaches you to write smart contracts through building your own crypto-collectibles game.
  • cryptodevhub.io - Community-driven effort to unite like-minded people interested in Blockchain- and Crypto Technologies.
  • Discover Ethereum & Solidity (ludu.co) - Complete course that takes you through the process of creating a decentralized Twitter clone using best practices.
  • ExtropyIO/defi-bot - Tutorial for building DeFi arbitrage bots.
  • karmacoma-eth/sending-ether-cheat-sheet - Tips and best practices for sending Ether.
  • LearnXInY - Learn Solidity in 15 mins (for experienced devs).
  • manojpramesh/solidity-cheatsheet - Cheat sheet and best practices.
  • Questbook - Questbook is building a University DAO where learning is always free. Starting with crypto-dev courses by leading devs.
  • Solidity and Vyper cheat sheet - Review syntax of both languages side-by-side.
  • Teach Yourself Web3 - Join a community of Web3 engineers & educators that can help you supercharge your way into Web3 development.
  • topmonks/solidity_quick_ref - Syntax overview.
  • willitscale/learning-solidity - Complete guide on getting started, creating your own crypto, ICOs and deployment.
  • useweb3.xyz/tutorials - A curated list of free, community tutorials that are based around specific projects, tasks or challenges.
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
  • deno-web3/solc - Solidity bindings for Deno.
  • solc-js - JavaScript bindings for the Solidity compiler.
  • solidity-parser - Solidity parser built in JavaScript.
  • sulk - Configurable contract compilation.
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

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