Resources and Learning Material

web3.py and the Ethereum Python ecosystem have an active community of developers and educators. Here you’ll find libraries, tutorials, examples, courses and other learning material.

Warning

Links on this page are community submissions and are not vetted by the team that maintains web3.py. As always, DYOR (Do Your Own Research).

First Steps

Resources for those brand new to Ethereum:

Courses

Frameworks and Tooling

  • ApeWorX - The Ethereum development framework for Python Developers, Data Scientists, and Security Professionals

  • Woke - A Python-based development and testing framework for Solidity

  • Brownie- A Python-based development and testing framework for smart contracts targeting EVM

Warning

Brownie lacks active maintenance. See migration guide to ApeWorX.

Smart Contract Programming Languages

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

Libraries

  • Web3 Ethereum DeFi - Library for DeFi trading and protocols (Uniswap, PancakeSwap, Sushi, Aave, Chainlink)

  • lighter-v1-python - Lighter.xyz DEX client for Python

  • uniswap-python - Library lets you easily retrieve prices and make trades on all Uniswap versions.

  • pyWalletConnect - WalletConnect implementation for wallets in Python

  • dydx-v3-python - Python client for dYdX v3

  • Lido Python SDK - Library with which you can get all Lido validator’s signatures and check their validity

Conference Presentations and Videos

Applications

Hackathon Helpers

  • eth-flogger - Sample web app utilizing async web3.py, Flask, SQLite, Sourcify

  • Temo - Sample terminal app utilizing async web3py, Textual, Anvil