- 
          
 - 
                Notifications
    
You must be signed in to change notification settings  - Fork 407
 
Extensions to attrs
        Tin Tvrtković edited this page Jan 19, 2025 
        ·
        24 revisions
      
    The following libraries build on attrs to provide additional functionality or have special support for attrs classes:
- attrs2bin: Binary serializer for attrs-based classes.
 - 
attrs-strict: runtime validation for attributes specified in attrs dataclasses based on the 
typefield provided. - bfa: Builders for attrs
 - cattrs: for structuring and unstructuring data
 - cyclopts: for modern, easy-to-use command-line interfaces
 - 
datargs: A paper-thin wrapper around 
argparsethat creates type-safe parsers fromdataclassand attrs classes. - desert: DRY deserialization for dataclasses and attrs classes.
 - inline-snapshot: create and update inline snapshots in your Python code.
 - marshmallow-attrs: Marshmallow serialization for attrs classes.
 - msgspec: fast serialization and validation library, with builtin support for JSON, MessagePack, YAML, and TOML – and first-class support for attrs
 - 
prettyprinter: an extensible alternative to 
pprintcomes with attrs support. - related: for creating nested object models that can be serialized to and de-serialized from nested python dictionaries
 - Rich supports pretty-printing of attrs classes.
 - serde: a performant serialization / deserialization extension to and from plain dicts.
 - spock: lightweight typed and stateful parameter configuration library (mainly for ML) that wraps attrs
 - typecats: Make attrs classes act more like structural (rather than nominal) typing; built on top of cattrs.
 - valid8: provides an alternate way to add validation to attributes, supporting various coding styles to define your validation functions and validation exception types/messages
 - 
yasoo: Serializes and deserializes attrs and 
dataclassobjects without relying on type hints.