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

199 stars
5 watching
9 forks
Language: Python
last commit: 15 days 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 142
realpython/pytest-mypy A plugin that integrates mypy with pytest to enable static type checking during unit testing. 248
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 30
dry-python/classes Typed polymorphism primitives for Python business logic 670
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 103
alecthomas/voluptuous A Python data validation library that provides simple and expressive validation of complex data structures. 1,819
erezsh/runtype A Python library for run-time type validation and multiple dispatch utilities 163
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 type checker built to resolve issues with the mypy project and Python's typing system 143
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