A curated list of awesome Solidity resources, libraries, tools and more.
Please check the contribution guidelines for info on formatting and writing pull requests.
- Docs - Official documentation.
- FAQ - Frequently asked question about Solidity.
 
 - Ethereum Wiki - The Ethereum Wiki.
- Solidity Features - List to explain and demonstrate new features as soon as they are completed.
 
 - Ethereum Stackexchange - Ethereum's Stackexchange board.
 - Gitter - Gitter channel.
 - Solidity Github Repo - Source code.
 
- Discover Ethereum & Solidity - Complete course that takes you through the process of creating a decentralized Twitter clone using best practices.
 - Monax Smart Contract Tutorial - Tutorial series which begins with a very simple smart contract and teaches how to gradually increase the complexity of your contracts with relevant design patterns.
 - Solidity Workshop - Comprehensive series of tutorials covering contract-oriented programming and advanced language concepts.
 - Upgradable Contracts - Medium article on writing upgradable contracts.
 - EthereumDev.io - Complete tutorial from starting to writing complex smart contracts and DApps.
 - Learn Solidity - Complete guide on getting started, creating your own crypto, ICOs and deployment.
 - CryptoZombies - Interactive code school that teaches you to write smart contracts through building your own crypto-collectables game.
 - Hackr.io Tutorials - Community curated tutorials and courses.
 - LearnXInY - Learn Solidity in 15 mins (for experienced devs).
 
- Capture the Ether - Game in which you hack Ethereum smart contracts to learn about security.
 - Ethereum Smart Contract Security Best Practices: General security philosophy, known attacks, and sample code.
 
- DigixDAO contracts - Contracts for DAO-related data structures such as tokens.
 - slockit/smart-contract - Smart contracts for the Slock.it project.
 - Solidity Baby Steps - Comprehensive collection of contract examples.
 - Solidity By Example - Contract examples from the official docs.
 - solidity-examples - Examples which provide a starting point for data structures such as heaps and queues.
 - Solidity idiosyncrasies - Common gotchas, pitfalls, limitations, and idiosyncrasies.
 - raineorshine/solidity-by-example - A collection of short yet fully-functional contracts that demonstrate language features.
 
- dapp-bin - Ethereum repo providing implementations for many common data structures and utilities in Solidity, Serpent and LLL.
 - dapp-scratch - CLI for generating javascript modules from Contracts for Decentralized Apps.
 - dappsys - Contract system framework for flexible multi-contract dapps.
 - DappTools - Command-line-friendly tools for blockchain development.
 - instant-dapp-ide - Complete Dapp and Solidity development environment as a docker image you can run from command line.
 - Modular Libraries - Deployed utility libraries to use in your smart contracts.
 - Smart Contracts Skeleton - Preconfigured skeleton repository for building or starting with development of Smart contracts.
 - DApp development starter - Starter repository with Docker containers for building decentralized applications with Truffle and Node.Js as backend server.
 - Solidity Collections - Collections of code snippets and utility libraries.
 - Solidity Standard Library - Proof-of-concept for standard library.
 - sqlsol - Event-driven SQLite3 cache for syncing with smart contracts.
 - Truffle - Development environment, testing framework and asset pipeline for Ethereum.
 - OpenZeppelin - Framework to build secure smart contracts.
 
- REPL - REPL CLI.
 - solgraph - Visualize control flows for smart contract security analysis.
 - Remix - Online realtime compiler and runtime.
 
- SmartCheck - Online tool for checking smart contracts for vulnerabilities and bad practices.
 - Securify - Online tool for analyzing smart contracts for vulnerabilities and insecure coding.
 - Mythril - Security analysis tool for smart contracts.
 - Manticore - Tool for analysis of binaries and smart contracts.
 - Porosity - Decompiler and security analysis tool for smart contracts.
 
- Embark - Framework that allows you to easily develop and deploy DApps.
 
- solc-js - JavaScript bindings for the Solidity compiler.
 - solidity-parser - Solidity parser built in JavaScript.
 - sulk - Configurable contract compilation.
 
- Soltsice - Generates strongly-typed TypeScript classes for contracts from Truffle artifacts with a single command.
 
- solhint - Solidity linter that provides security, style guide and best practice rules for smart contract validation.
 - solium - Linter to identify and fix style & security issues in Solidity smart contracts.
 - sol-tester - Utilities for building, linking and testing contracts using go-ethereum and the simulated chain.
 - solidity-coverage - Code coverage tool.
 - ethrain - Gets you testnet ether without mining.
 - rpc-check - Reviews the json rpc interface from "outside".
 
- solidity-loader - Webpack loader.
 
- autocomplete-solidity - Parses Solidity files to give you contextual autocomplete suggestions.
 - language-ethereum - Adds syntax highlighting and snippets to Solidity and Serpent files in Atom.
 - linter-solidity - Linter.
 
- uml2solidity - Model smart contracts with UML.
 
- company-solidity - Autocomplete with company-mode.
 - emacs-solidity - Solidity mode for Emacs.
 
- intellij-solidity - Solidity plugin for IntelliJ.
 
- SublimeEthereum - Solidity syntax for SublimeText.
 
- vim-solidity - Vim syntax file.
 - solidity.vim - Vim compiler plugin.
 
- vscode-solidity - Visual Studio Code language support extension.
 
To the extent possible under law, Ben Kremer has waived all copyright and related or neighboring rights to this work.