vyper
Vyper: the Pythonic Programming Language for the EVM
What it is and what it does
Vyper is a statically-typed programming language designed specifically for writing smart contracts on the EVM. It adopts Python syntax and semantics to make smart contract development more accessible to Python developers. The compiler translates Vyper source code into EVM bytecode and generates contract ABIs for deployment and interaction.
The package provides a command-line compiler that can generate bytecode, ABI, and intermediate representations from .vy contract files. It depends on cbor2, asttokens, pycryptodome, packaging, lark, wheel, and immutables for parsing, cryptographic operations, and code analysis. The language is actively maintained and supports Python 3.10 through 3.13, though the project emphasizes that Vyper is constantly evolving and users should understand the risks associated with smart contract development.
Use it for:
- Compile Vyper smart contracts to EVM bytecode for deployment on Ethereum and compatible networks
- Generate contract ABIs for integration with web3 libraries and blockchain interaction tools
- Develop smart contracts using Python-familiar syntax while leveraging EVM features
- Experiment with smart contract logic in the online Jupyter environment at try.vyperlang.org
- Build and test Ethereum contracts as part of a development pipeline using the CLI compiler
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Vyper is a Python-like programming language for writing smart contracts on the Ethereum Virtual Machine (EVM), compiling to bytecode and ABI formats.
Yes, with caution. Vyper is actively maintained, widely used (235861 monthly downloads), and offers genuine value for Python developers entering smart contract development. However, install only if you understand smart contract security risks and can review the 2 known vulnerabilities (GHSA-vgf2-gvx8-xwc3, PYSEC-2023-142) in the context of your use case. Not suitable for production contracts without security audit.
Install
vyper on PyPI
pip
pip install vyperuv
uv add vyperpoetry
poetry add vyperInstalling vyper
Before you install
Low install friction with a pure-Python wheel distribution. Active maintenance with recent commits and a large community (5179 GitHub stars). However, the package has 2 known security vulnerabilities that should be reviewed before use.
License in practice
Licensed under Apache License 2.0 (permissive), allowing commercial and private use with minimal restrictions beyond attribution and liability disclaimers.
Quickstart
pip install vyper
vyper your_file_name.vy
vyper -f bytecode your_file_name.vy > your_file_name.bin
vyper -f abi your_file_name.vy > your_file_name.abi
Requires Python 3.10 or later (supports 3.10, 3.11, 3.12, 3.13). Vyper is constantly evolving; understand the risks associated with smart contract development before using in production.
Verify before relying
- Whether the 2 known vulnerabilities (GHSA-vgf2-gvx8-xwc3, PYSEC-2023-142) affect the compiler itself or only specific contract patterns
- Current status and remediation timeline for the identified security issues
Package facts
| License | Apache License 2.0 (permissive) |
| Python support | supports the current Python release (<4,>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 7 — cbor2, asttokens, pycryptodome, packaging, lark, wheel, immutables |
| Maintenance | actively maintained — 422 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 235,861/month — #8,993 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | 2 — GHSA-vgf2-gvx8-xwc3, PYSEC-2023-142 |
Evidence: vyper-0.4.3-py3-none-any.whl
Keywords: ethereum, evm, smart, contract, language
Tags
More Build Tools packages
Provides reusable utilities for Python…
permissive · top 100 on PyPI
tqdmWraps any iterable to display a real-time…
copyleft · top 100 on PyPI
pippip is the standard installer for Python…
permissive · top 100 on PyPI
hatchlingHatchling is a standards-compliant Python build…
permissive · top 100 on PyPI
grpcio-toolsGenerates Python gRPC service stubs and message…
permissive · top 1,000 on PyPI
pre-commitpre-commit is a framework for installing and…
permissive · top 1,000 on PyPI
py-evmPy-EVM is a Python implementation of the…
permissive · top 15,000 on PyPI
vyper-configVyper provides a unified configuration system…
permissive · top 15,000 on PyPI
mythrilMythril analyzes EVM bytecode for security…
permissive · top 15,000 on PyPI
eth-brownieBrownie is a Python framework for developing,…
permissive · top 15,000 on PyPI
ethereum-dasmDisassembles Ethereum EVM bytecode into…
copyleft · top 15,000 on PyPI
pyevmasmpyevmasm assembles and disassembles Ethereum…
permissive · top 15,000 on PyPI
crytic-compileCrytic-compile abstracts smart contract…
agpl · top 15,000 on PyPI
slither-analyzerSlither is a static analysis framework for…
agpl · top 15,000 on PyPI
clvmA LISP-like virtual machine for writing and…
permissive · top 15,000 on PyPI
clvm-toolsCompiles a LISP-like smart-contract language…
permissive · top 15,000 on PyPI