Dark Mode

Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings
This repository was archived by the owner on Sep 8, 2025. It is now read-only.

ethereum/py-evm

Repository files navigation

Caution

This repository has been archived, and is now read-only. For a Python implementation of the EVM, check out the execution-specs repo.

Python Implementation of the Ethereum protocol

Py-EVM

Py-EVM is an implementation of the Ethereum Virtual Machine (EVM) in Python.

Goals

Py-EVM aims to be a readable yet generally performant version of the EVM in Python.

In particular Py-EVM aims to:

  • be easy to understand and modifiable
  • be highly flexible to support research and experimentation
  • be performant enough to be used in testing for Python projects
  • be a reference implementation of the Ethereum execution layer specifications

Ethereum consensus today is achieved via Proof of Stake, involving a consensus layer that is beyond the scope of this repository.

Installation

python -m pip install py-evm

Documentation

Get started in 5 minutes

Check out the documentation on our official website

View the change log.

About

A Python implementation of the Ethereum Virtual Machine

Topics

Resources

Readme

License

MIT license

Contributing

Contributing

Stars

Watchers

Forks

Packages

Contributors

Languages