attrs
Python Classes Without Boilerplate
pythonboilerplateattributesoopclasses
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.