Awesome Web3

Awesome Web3

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.

I am a UX Director/ Full-Stack engineer / Linux Enthusiast and Startups Investor with over 15+ years of experience in advertising, technology, and the startup industry. I've won Awwwards, helped create products or brands at the Digital Agency of the Decade.