attrs

Class boilerplate generator that produces well-behaved data classes with validators, converters, and slots — predates and complements dataclasses.

data-validation-frameworksNew to PyRadar
76
Hero Score
Popularity
76
Performance
45
Ecosystem
75
Maturity
100
Dev Experience
83
⭐ 5,791 stars⬇ 183.9M downloads/wkFirst release: Feb 2015Last release: Mar 2026
Async Support: NoPlugin Extensions: HighSpeed: FastDoc Quality: Very highLearning Curve: Easy

Pros

  • Powerful built-in validators and converters with minimal boilerplate
  • Slots support and memory efficiency out of the box
  • Mature, battle-tested, and widely adopted across the Python ecosystem

Cons

  • External dependency where stdlib dataclasses may suffice
  • Two parallel APIs (modern @define vs legacy @attr.s) can confuse newcomers
  • No built-in JSON serialization (requires cattrs or similar)

Alternatives in data-validation-frameworks

Compare Python Packages with ease.