phantom-types

Data validator

Phantom types enable safe parsing and validation of data by making certain states unrepresentable at compile time

Phantom types for Python.

GitHub

205 stars
5 watching
9 forks
Language: Python
last commit: 3 months ago
Linked from 1 awesome list

mypyphantom-typespythonpython3refinedrefined-typesrefinement-typesstatic-analysisstatic-typingtypingvalidation

Backlinks from these awesome lists:

Related projects:

Repository Description Stars
ambv/retype Re-applies type annotations from .pyi stubs to codebases 141
realpython/pytest-mypy Automates mypy static type checking as part of pytest test runs 249
mplanchard/safetywrap Typesafe wrappers for handling errors and absent data in Python 44
pvs-hd-tea/pytypes Infer static type information from Python code by tracing execution paths 11
davidfritzsche/pytest-mypy-testing A tool to verify mypy's static type analysis output 31
dry-python/classes Enables typed polymorphism and type-safe business logic in Python without inheritance or interfaces. 678
daveoncode/pyvaru A library for implementing custom validation rules across various data types and structures in Python. 20
typeddjango/pytest-mypy-plugins A plugin for testing type checking and stubs using mypy and pytest 107
alecthomas/voluptuous A Python data validation library providing simple and flexible ways to validate complex data structures. 1,823
erezsh/runtype A Python library for run-time type validation and multiple dispatch utilities 162
integralist/vim-mypy A Vim plugin for executing Python's static type checker. 97
pynamodb/pynamodb-mypy A plugin that provides type checking and enforcement for PynamoDB models and attributes. 4
kotlinisland/basedmypy A Python static type checker with additional features to improve typing and error reporting. 148
mariusvniekerk/pytest-monkeytype A pytest plugin that generates annotations and stubs for Python modules based on their type definitions 43
mat1g3r/option A library that provides Rust-like Option and Result types in Python to handle optional and error values in a more type-safe and expressive way. 85