Skip to content

tkernell/awesome-solidity

 
 

Repository files navigation

awesome-solidity Awesome Build Status PRs Welcome

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

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

Contents

Resources

Official

Tutorials

  • CryptoZombies - Interactive code school that teaches you to write smart contracts through building your own crypto-collectables game.
  • Discover Ethereum & Solidity - Complete course that takes you through the process of creating a decentralized Twitter clone using best practices.
  • EthereumDev.io - Complete tutorial from starting to writing complex smart contracts and DApps.
  • Hackr.io Tutorials - Community curated tutorials and courses.
  • Learn Solidity - Complete guide on getting started, creating your own crypto, ICOs and deployment.
  • LearnXInY - Learn Solidity in 15 mins (for experienced devs).
  • 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.
  • Syntax cheat sheet - Quick syntax overview.
  • Upgradable Contracts - Medium article on writing upgradable contracts.

Security

Examples

Libraries

  • create-truffle-dapp - CLI to create and deploy Truffle projects with no configuration.
  • dapp-bin - Ethereum repo providing implementations for many common data structures and utilities in Solidity, Serpent and LLL.
  • DApp development starter - Starter repository with Docker containers for building decentralized applications with Truffle and Node.Js as backend server.
  • 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.
  • OpenZeppelin - Framework to build secure smart contracts.
  • Smart Contracts Skeleton - Preconfigured skeleton repository for building or starting with development of Smart contracts.
  • Solidity Collections - Collections of code snippets and utility libraries.
  • Solidity Standard Library - Standard library (Array, random, math, string).
  • sqlsol - Event-driven SQLite3 cache for syncing with smart contracts.
  • Truffle - Development environment, testing framework and asset pipeline for Ethereum.
  • truffle-assertions - Adds additional assertions and utilities used in testing smart contracts with truffle.

Tools

General

  • Cryptofex - Standalone IDE and compiler.
  • Remix - Online realtime compiler and runtime.
  • REPL - REPL CLI.
  • solgraph - Visualize control flows for smart contract security analysis.

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.
  • SmartCheck - Online tool for checking smart contracts for vulnerabilities and bad practices.
  • Securify - Online 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.

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.

JavaScript

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

Utility

  • ethrain - Gets you testnet ether without mining.
  • rpc-check - Reviews the json rpc interface from "outside".
  • 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.

Webpack

Editor Plugins

Atom

Eclipse

  • uml2solidity - Model smart contracts with UML.
  • YAKINDU Solidity Tools - Features context sensitive code completion and help, code navigation, syntax coloring, built in compiler, quick fixes and templates.

Emacs

IntelliJ

Sublime

Vim

Visual Studio Code


License

CC0

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

About

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

Resources

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Shell 100.0%