add django-viewcomponent
I have submitted 3 packages which all built by me, they have been used in many Django projects so I think it make sense to add them to this awesome list.
Thx.
@michael-yin Coming from https://github.com/wsvincent/awesome-django/blob/main/contributing.md
Make an individual pull request for each suggestion and include a reason why it is awesome.
I believe it's easier to review when this recommendation is followed, and it increases the chance that the changes will be merged.
Project Information
-
Project Name: django-viewcomponent
-
Project URL: https://github.com/rails-inspire-django/django-viewcomponent
-
Description:
django-viewcomponent is a Django library that provides a way to create reusable components for Django projects, inspired by Rails ViewComponent. It focuses on encapsulating Django templates with enhanced slot functionality and improved testability.
Criteria
-
Is the project new?
- [ ] Yes
- [x] No
-
How long has the project been maintained?
django-viewcomponent has been maintained for approximately 1 year (first commit around late 2023), with active development and regular updates. The project shows consistent commit activity with the latest update 10 months ago.
-
How many releases has it had if it's a library or package?
django-viewcomponent has 9 releases, with the latest being v1.0.10 on January 3, 2025. Release history
-
Are you the author, or are you submitting the project on behalf of a company?
- [x] I am the author
- [ ] I am submitting on behalf of a company
- [ ] Other (please specify)
-
What makes it awesome?
- Inspired by Rails ViewComponent, bringing proven patterns to Django
- Focuses purely on template encapsulation without frontend asset concerns
- Enhanced slot functionality that can be invoked multiple times for collections
- Slot fields declared in Python rather than templates for better maintainability
- Built-in preview system for component development
- Components are Python objects, making them easily testable without touching views/URLs
AI Disclosure
We love transparent contributions. Using AI is perfectly fine, just let us know.
- [x] Yes, this pull request was generated or assisted by AI.
- [ ] No, this pull request was authored entirely by a human.
Additional Information
django-viewcomponent fills an important gap in the Django ecosystem by bringing component-driven development patterns to Django templates.