Enhanced Strawberry integration with Django.
Built on top of strawberry-django integration, enhancing its overall functionality.
Check the docs for information on how to use this lib.
- All supported features by
strawberry
andstrawberry-django
, with proper typing and documentation. - Query optimizer extension
that automatically optimizes querysets
(using
only
/select_related
/prefetch_related
) to solve graphqlN+1
problems, with support for fragment spread, inline fragments,@include
/@skip
directives, prefetch merging, etc - Django choices enums using support for better enum typing (requires django-choices-field)
- Permissioned resolvers using schema directives, supporting both django authentication system, direct and per-object permission checking for backends that implement those (e.g. django-guardian).
- Mutations for Django, with CRUD support and automatic errors validation.
- Relay support for queries, connections and input mutations, using the official strawberry's relay integration
- Django Debug Toolbar integration with graphiql to display metrics like SQL queries
- Improved sync/async resolver that priorizes the model's cache to avoid have to use sync_to_async when not needed.
pip install strawberry-django-plus
The code in this project is licensed under MIT license. See LICENSE for more information.