beartype
Unbearably fast near-real-time pure-Python runtime-static type-checker.
Install
beartype on PyPI
pip
pip install beartypeuv
uv add beartypepoetry
poetry add beartypePackage facts
| License | MIT License Copyright (c) 2014-2025 Beartype authors. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the… (full text in the JSON record) (permissive) |
| Python support | supports the current Python release (>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | none |
| Maintenance | actively maintained — 243 days since the last release |
| Last repo commit | |
| First released | |
| Popularity | one of the top 1,000 most-downloaded packages on PyPI (30-day window, as of 2026-08-13) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-13) |
Evidence: beartype-0.22.9-py3-none-any.whl
Keywords: annotations, python, type checking, type hints
About beartype
from the package's own PyPI description — quoted content, verbatim
.. # ------------------( LICENSE )------------------ .. # Copyright (c) 2014-2025 Beartype authors. .. # See "LICENSE" for further details. .. # .. # ------------------( SEO )------------------ .. # Metadata converted into HTML-specific meta tags parsed by search engines. .. # Note that: .. # * The "description" should be no more than 300 characters and ideally no .. # more than 150 characters, as search engines may silently truncate this .. # description to 150 characters in edge cases.
.. meta:: :description lang=en: Beartype is an open-source pure-Python PEP-compliant constant-time runtime type checker emphasizing efficiency and portability.
.. # ------------------( SYNOPSIS )------------------
================= |beartype-banner| =================
|rtd-badge| |ci-badge| |codecov-badge|
⚠
`Beartype documentation lives at ReadTheDocs (RTD) <beartype RTD_>`__. It's
readable, structured, and soothing to the deep folds of your big galactic
brain. Open your mind to an ocean of mundane knowledge that will exhaust
you at work. Enter... **the...
AI interpretation — verify before relying
AI-generated interpretation of the package facts above; every digit, version, license, or vulnerability id it cites is grounded in the facts already shown on this page
Beartype is a pure-Python runtime type checker that validates type hints on functions, classes, and variable assignments with minimal performance overhead, supporting PEP-compliant annotations and custom validators.
Beartype has zero runtime dependencies and installs as a pure-Python wheel with low friction. The project is actively maintained with a recent release 243 days ago and strong community engagement (3483 GitHub stars), indicating reliable ongoing support.
Beartype is licensed under the MIT License, a permissive open-source license that allows unrestricted use, modification, and distribution in both commercial and private projects with minimal obligations beyond attribution.
Usage
pip install beartype
from beartype import beartype
@beartype
def greet(name: str) -> str:
return f"Hello, {name}!"
greet("World") # Valid call
greet(b"bytes") # Raises BeartypeCallHintParamViolation
Requires Python 3.10 or later.
Verdict: Beartype is a production-ready, actively maintained type checker with zero dependencies, permissive MIT licensing, and no known vulnerabilities. Its low install friction and strong maintenance signal make it a reliable choice for runtime type validation in Python 3.10+ projects.
Needs verification
- Performance overhead characteristics compared to static type checkers or other runtime validators in typical application scenarios.
- Compatibility with dynamic typing patterns or type-checking frameworks beyond standard PEP annotations.
- Real-world adoption patterns and integration success in large codebases.
Similar packages
permissive · top 100 on PyPI
diff-coverpermissive · top 1,000 on PyPI
rfc3339-validatorpermissive · top 1,000 on PyPI
annotated-docpermissive · top 100 on PyPI
mccabepermissive · top 1,000 on PyPI
cataloguepermissive · top 1,000 on PyPI
ipython-pygments-lexerspermissive · top 1,000 on PyPI
browser-usepermissive · top 1,000 on PyPI
crashtestpermissive · top 1,000 on PyPI
schemapermissive · top 1,000 on PyPI