django-viewcomponent is a Django library that provides a way to create reusable components for your Django project.
It is inspired by Rails ViewComponent.
django-viewcomponent can help developers to build reusable components from the Django templates, and make the templates more readable and maintainable.
django-viewcomponent components are Python objects, so they can be easily tested without touching Django view and Django urls.
- django-viewcomponent is inspired by Rails ViewComponent, focusing solely on encapsulating Django templates without concerning itself with other elements such as frontend assets or generating Django responses.
- The
slot
field in django-viewcomponent can be invoked multiple times to pass collections. - In django-viewcomponent, slot fields are declared in the Python component file rather than in the template file, making the slot field more flexible and easier to maintain.
- django-viewcomponent includes a preview feature that allows developers to easily create component previews.