Skip to main content

Python implementation of the Ethereum Virtual Machine

Project description

Join the chat at https://gitter.im/ethereum/py-evm Documentation Status

Py-EVM

Py-EVM is a new implementation of the Ethereum protocol in Python. It contains the low level primitives for the existing Ethereum 1.0 chain as well as emerging support for the upcoming Ethereum 2.0 / Serenity spec.

Goals

Py-EVM aims to eventually become the defacto Python implementation of the Ethereum protocol, enabling a wide array of use cases for both public and private chains.

In particular Py-EVM aims to:

  • be a reference implementation of the Ethereum 1.0 and 2.0 implementation in one of the most widely used and understood languages, Python.

  • be easy to understand and modifiable

  • have clear and simple APIs

  • come with solid, friendly documentation

  • deliver the low level primitives to build various clients on top (including full and light clients)

  • be highly flexible to support both research as well as alternate use cases like private chains.

Trinity

While Py-EVM provides the low level APIs of the Ethereum protocol, it does not aim to implement a full or light node directly.

Goals

  • provide a reference implementation for an Ethereum 1.0 node (alpha)

  • support “full” and “light” modes

  • fully support mainnet as well as several testnets

  • provide a reference implementation of an Ethereum 2.0 / Serenity beacon node (pre-alpha)

  • provide a reference implementation of an Ethereum 2.0 / Sereneity validator node (pre-alpha)

Quickstart

Get started in 5 minutes

Documentation

Check out the documentation on our official website

Want to help?

Want to file a bug, contribute some code, or improve documentation? Excellent! Read up on our guidelines for contributing and then check out one of our issues that are labeled Good First Issue.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

py-evm-0.2.0a36.tar.gz (566.6 kB view details)

Uploaded Source

Built Distribution

py_evm-0.2.0a36-py3-none-any.whl (693.6 kB view details)

Uploaded Python 3

File details

Details for the file py-evm-0.2.0a36.tar.gz.

File metadata

  • Download URL: py-evm-0.2.0a36.tar.gz
  • Upload date:
  • Size: 566.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.21.0 setuptools/39.1.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.6.7

File hashes

Hashes for py-evm-0.2.0a36.tar.gz
Algorithm Hash digest
SHA256 e3ac86c1f7043608bf259aea023508326ef419940762967c6df7f164cc03206e
MD5 bd8f2d1ac8effdc39d0031ff21421b99
BLAKE2b-256 6903b1719ff57c29eb4784c4ab7d330a245130a8aead2707ef0646f209cf9257

See more details on using hashes here.

File details

Details for the file py_evm-0.2.0a36-py3-none-any.whl.

File metadata

  • Download URL: py_evm-0.2.0a36-py3-none-any.whl
  • Upload date:
  • Size: 693.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.21.0 setuptools/39.1.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.6.7

File hashes

Hashes for py_evm-0.2.0a36-py3-none-any.whl
Algorithm Hash digest
SHA256 42b3739bc7ba45f1f45b063ede2f8dbe07e48d53d7dd080a85b0d7d22f4ebcb1
MD5 bffd576a2f6307ee60c059011ba1f2f0
BLAKE2b-256 7aa67a1aefbadb82d5b28837c88bbfa4e008a330828d11e3ebeb29d3735f2442

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page