attrs

Python Classes Without Boilerplate

pythonboilerplateattributesoopclasses

Preview

attrs preview

Overview

attrs is a Python package that automatically generates common class methods like __init__, __repr__ and __eq__ from simple attribute declarations, eliminating boilerplate code while maintaining performance. It works with or without type annotations and offers more flexibility than Python's built-in dataclasses, making it useful for any project that needs cleaner, more maintainable class definitions.

Features

class-decoratorattribute-declarationautomatic-reprequality-checkinginitializer-generationtype-annotations-optionalfrozen-classesvalidatorsconvertersslotsmetadatahashingcomparison-customizationserialization-to-dictfactory-defaultsprivate-attributesderived-attributesextension-hooks

Feature Flags

subscriptionsblogecommerceteamsOrgscachingformsValidation

Recommended Use Cases

reducing-boilerplate-codewriting-concise-classesdata-modelingobject-protocol-implementationimmutable-data-structures

Frontend

None

Backend

python

Auth Providers

None

Deployment Targets

None

Payment Providers

None

Quick Facts

โญ Stars
5,7k
๐Ÿด Forks
407
๐Ÿงพ License
mit
๐Ÿ”„ Active
Yes
๐Ÿ•’ Last Commit
2025-11-04T08:34:09.000Z
GitHub

Stack

Language
python

Data Layer

UI Stack

Developer Experience

Docker
No
Tests
Yes
Quickstart
Yes
env.example
No

Pricing

Classification
free
Selected
โ€”
Notes
Open source library available on PyPI. Commercial support available through Tidelift Subscription.
Get Started with this Boilerplate