django-graph-auth is a Django application which provides simple mutations and queries for managing users with GraphQL. It can register users, log in, reset users, and expose JSON web tokens.
Documentation can be found on GitHub.
This has only been tested with:
- Python: 3.5
- Django: 1.10
Install from pip:
pip install django-graph-auth
and then add it to your installed apps:
INSTALLED_APPS = (
...
'graph_auth',
...
)
You will also need to edit your base schema to import the mutations and queries, like this:
import graphene
from graphene import relay, ObjectType
import graph_auth.schema
class Query(graph_auth.schema.Query, ObjectType):
node = relay.Node.Field()
class Mutation(graph_auth.schema.Mutation, ObjectType):
pass
schema = graphene.Schema(query=Query, mutation=Mutation)
GRAPH_AUTH = {
'USER_FIELDS': ('email', 'first_name', 'last_name', ), # Which user fields are available
'ONLY_ADMIN_REGISTRATION': False, # Only alow admins to register new users
'WELCOME_EMAIL_TEMPLATE': None, # Email template for optional welcome email, user object fields is in scope
'EMAIL_FROM': None # Email from for welcome email
}
django-graph-auth
was created by Morgante Pell (@morgante) and Anthony Loko (@amelius15). It is based on django-rest-auth.