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
Solidity by Example - Basic examples on Solidity.
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
Mapping Out Eth 2.0 - Development of Ethereum 2.0.
BAT Community - BAT, Brave and tech underneath.
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