# eth-brownie/brownie

A Python-based development and testing framework for smart contracts targeting the Ethereum Virtual Machine.

Repository: https://github.com/eth-brownie/brownie
Canonical: https://ross.abutalabs.com/products/brownie
Homepage: https://eth-brownie.readthedocs.io
Language: C
License: MIT
License Family: permissive
Topics: ethereum, web3py, solidity, vyper
Last push: 2026-08-05T06:41:17+00:00

## Health v2 (maintenance only)
Score: 90/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 96, release rhythm 77, longevity 100
- inputs: {"age_days": 2861, "days_push": 28, "days_rel": 73, "gap_med": 47, "n_releases_24m": 10}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 2723, forks 594 (observed 2026-08-28T04:07:15.616882+00:00)

## What it is
Brownie is a Python-based development and testing framework for Ethereum smart contracts targeting the EVM, supporting Solidity and Vyper. It provides pytest-based contract testing, property-based testing via Hypothesis, debugging tools, and an interactive console, though it is no longer actively maintained in favor of Ape Framework.

## Use cases
- test ethereum smart contracts in python
- deploy and interact with solidity contracts from python
- write property-based tests for smart contracts
- debug solidity contract transactions with tracebacks
- measure test coverage of vyper contracts
- run an interactive console against a local blockchain

## When to choose
- you need a mature python framework for solidity or vyper contract testing
- you want pytest integration and trace-based coverage for ethereum projects
- you prefer hypothesis-based stateful testing for contracts

## When to avoid
- you are starting a new project - the maintainers recommend Ape Framework instead
- you rely on ganache, which has been sunsetted
- you need actively maintained tooling with regular releases

## Facets
- artifact type: framework
- maturity: maintenance
- function: testing, e2e-testing, cli, developer-tools
- domain: blockchain, developer-tools, testing
- platform: python, cli, cross-platform
- tags: ethereum, smart-contracts, solidity, vyper, web3, pytest, blockchain-development

## Member repositories
- eth-brownie/brownie (main) score 90

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:07:15.616882+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T02:14:56.523422+00:00, confidence not recorded.
  - readme: https://github.com/eth-brownie/brownie (fetched 2026-08-28T04:07:15.616882+00:00, sha 57f70a169af3)
- Data as of 2026-08-30T08:39:29.467469+00:00.
