Awesome Web3

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

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

Awesome List

  • Solidity - Curated list of awesome Solidity resources, libraries, tools and more.

  • Ethereum - Awesome Ethereum & Dapps Resources.

Reference

  • BIPs - Bitcoin Improvement Proposals.

  • EIPs - Ethereum Improvement Proposals.

  • Ethereum Yellow Paper - Formal definition of the Ethereum protocol.

  • EVM Illustrated - Illustrated explanation of how EVM works under the hood.

  • EVM Opcodes - Low level reference for the EVM and a Solidity decompiler which turns bytecode into more readable Solidity-like code.

  • evm.codes - An interactive reference to Ethereum Virtual Machine Opcodes (source code).

  • Solidity - Solidity is an object-oriented, high-level language for implementing smart contracts.

Software Development

Sample Code

Development Environment

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

  • Ethereum Code Viewer - View source of deployed Ethereum smart contracts in VS Code.

  • EthFiddle - Web-based IDE that lets you write, compile, and debug your smart contract.

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

  • Remix - Online IDE for Solidity development.

Protocol

  • WalletConnect - Open protocol connecting wallets to Dapps.

  • WalletLink - Open protocol that lets users connect their mobile wallets to your DApp.

  • IPFS - Distributed system for storing and accessing files, websites, applications, and data.

JavaScript

  • avalanchejs - JavaScript Library for interfacing with the Avalanche Platform.

  • Avalanche Wallet SDK - Typescript library to create and manage wallets on the Avalanche network.

  • BitcoinJS - Bitcoin library for node.js and browsers.

  • dapparatus - Reusable dApp components in React.

  • ethers.js - Complete Ethereum wallet implementation and utilities in JavaScript (and TypeScript).

  • ipfs-mini - Super tiny module for querying an IPFS node, that works in the browser and in Node.

  • js-ipfs - IPFS implementation in JavaScript.

  • Truffle - Development environment, testing framework and asset pipeline for Ethereum.

  • wagmi - React hooks library for Ethereum.

  • web3.js - Ethereum JavaScript API which connects to the Generic JSON-RPC spec.

  • web3-react - Simple, maximally extensible, dependency minimized framework for building modern Ethereum dApps.

Solidity

  • Date and Time tools - Contract which implements utilities for working with datetime values in ethereum.

  • OpenZeppelin - The standard for secure blockchain applications.

Go

  • avalanchego - Go implementation of an Avalanche node.

  • avalanche-network-runner - Tool to run and interact with an Avalanche network locally.

  • ava-sim - Helper tool to spin up a local instance of an Avalanche network to interact with the standard APIs or to test a custom VM.

  • ethereum-hdwallet - Ethereum HD Wallet derivations from seed which implements the go-ethereum's accounts.Wallet interface.

  • coreth - Code and wrapper to extract Ethereum blockchain functionalities without network/consensus, for building custom blockchain services.

  • geth - Official Go implementation of the Ethereum protocol.

  • subnet-cli - CLI tool to manage Avalanche Subnets.

C/C++

  • Trust Wallet Core - Cross-platform, mobile-focused library implementing low-level cryptographic wallet functionality for a high number of blockchains.

Rust

  • OpenEthereum - The fast, light, and robust client for the Ethereum mainnet.

Shell

  • avash - Avalanche shell client provides temporary stateful shell execution environment used to deploy networks locally, manage their processes, and run network tests.

Python

  • py-evm - Ethereum protocol implementation in Python.

  • Vyper - Contract-oriented, pythonic programming language that targets EVM.

VMs

  • evmone - C++ implementation of the Ethereum Virtual Machine (EVM), faster.

  • SpacesVM - SpacesVM enables authenticated, hierarchical storage of arbitrary keys/values using any EIP-712 compatible wallet.

Boilerplate

  • scaffold-eth - Ethereum dev stack focused on fast product iterations.

  • create-eth-app - Create Ethereum-powered apps with one command, similar to create-react-app.

  • next-web3-boilerplate - Boilerplate in TypeScript using Next.js, NextAuth.js, siwe, Web3modal, useDapp, next-i18next, reactMUI.

Testing

  • mock-contract - Simple Solidity contract to mock dependent contracts in truffle tests.

  • openzeppelin-test-helpers - Assertion library for Ethereum smart contract testing that you can use with hardhat.

  • solidity-coverage - Code coverage for Solidity smart-contracts.

  • Waffle - Library for writing and testing smart contracts.

Code Quality

  • Slither - Solidity static analysis framework, a suite of vulnerability detectors, prints visual information about contract details etc.

  • solhint - Solidity linter providing Security and Style Guide validations.

Open Source Project

  • Blockscout - Blockchain explorer for Ethereum based network and a tool for inspecting and analyzing EVM based blockchains.

  • MetaMask - Browser extension of MetaMask crypto wallet.

  • Rabby - Browser extension crypto wallet for the DeFi ecosystem that works multi-chain.

  • Rainbow - Open source Ethereum wallet.

  • Remix - Browser-based compiler and IDE that enables users to build Ethereum contracts with Solidity language and to debug transactions.

  • UniSwap - Decentralized trading protocol on Ethereum.

Tutorial

  • useWeb3 - Learning platform for developers to explore and learn about Web3.

  • CryptoZombies - Interactive school that teaches you all things technical about blockchains.

  • Figment Learn - Tutorials for various use cases and networks, Avalanche, Solana, Polygon and more.

  • Buildspace - Cohort based web3 development courses, learn by building projects.

  • The complete guide to full stack Solana development with React, Anchor, Rust, and Phantom. - link

  • The complete guide to full stack Ethereum development. - link

  • Building a full stack NFT marketplace on Ethereum with Polygon. - link

  • Uploading files to IPFS from a web application. - link

  • Create your own NFT collection on Ethereum with Solidity. - link

  • Intro to dApp's: Create your dApp backend with Solidity. - link

  • Intro to dApp's: Create your dApp frontend with React. - link

  • What is a crypto wallet & how does it work? - link

  • Create your cryptocurrency token. - link

  • Solidity and Truffle CI setup. - link

  • How to use Slither to find smart contract bugs. - link

  • How to mock Solidity smart contracts for testing. - link

  • Building EVM from scratch. - link source code

YouTube Channel

  • Chainlink - Videos about blockchain basics, oracles, Free Code Camp and more.

  • EatTheBlocks - Numerous hands-on development tutorial videos on blockchain Solidity smart contracts.

  • Nader Dabit - Tutorials and live coding on dApps, NFTs, DeFi and more.

  • Patrick Collins - Smart contract development with Solidity.

Book

Podcast

Newsletter

Platform as a Service

Other

  • Chainlist - List of EVM networks, Chain IDs and Network IDs.

Contribute

Contributions are welcomed! Please read the contribution guidelines first.

Last updated