Skip to main content

Tests

Codecov

Pypi

contributions welcome

Pypi downloads

Python versions

Strawberry-django Social Auth

Django social authentication with Strawberry using Social Django.

About

This Library was inspired by Django-graphql-social-auth.

Django Social Auth for Strawberry Graphql engine.

Docs can be found here

Features

  • Awesome docs!
  • Social Auth
  • Profile pic's URL storage in User's model
  • Relay Support (Coming Soon...)

Installation:

pip install strawberry-django-social-auth
  • Add this for Avatar support in settings.py
SOCIAL_AUTH_PIPELINE = [
    ...
    'gql_social_auth.pipeline.get_avatar',  # Get Avatar Pipeline
]

Usage:

  1. Use built-In Mutation
@strawberry.type
class Mutation:
    social_auth = mutations.SocialAuth.field

schema = strawberry.Schema(query=Query, mutation=Mutation)
  1. Customize the Usage of Mutation using the decorator
from gql_social_auth.decorators import social_auth
from gql_social_auth.types import SocialAuthInput

@strawberry.type
class CustomMutation:
    @strawberry.mutation
    @social_auth
    def social_auth(self, info: Info, _input: SocialAuthInput, user, errors) -> CustomReturnType:
        # user: User object from model
        # errors: If any errors occurred during the process of getting the social auth
        # Note: Any of the user or errors is None at a time, both can't be None at the same time...
        if errors is not None:
            # Handle Error here
        # Use user Object here... 
        

Calling:

mutation SocialAuth($provider: String!, $accessToken: String!){
    socialAuth(provider: $provider, accessToken: $accessToken){
        uid
        avatar
        extraData
        errors
        success
        refreshToken {
            created
            isExpired
            expiresAt
            token
            revoked
        }
        token {
            token
            payload {
                exp
                origIat
            }
        }
        user {
            email
            archived
            dateJoined
            firstName
            isActive
            id
            isStaff
            isSuperuser
            lastLogin
            lastName
            logentrySet {
                pk
            }
            status {
                archived
                verified
            }
            verified
        }
      }
    }

Contributing

See CONTRIBUTING.md

Metadata

Release files for strawberry-django-social-auth 0.4.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for strawberry-django-social-auth 0.4.4
File Size Uploaded
strawberry_django_social_auth-0.4.4.tar.gz 6.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for strawberry-django-social-auth 0.4.4
File Interpreter ABI Platform
strawberry_django_social_auth-0.4.4-py3-none-any.whl Python 3 none any Details

Total release size: 14.0 kB

Release files / strawberry_django_social_auth-0.4.4.tar.gz

Download URL strawberry_django_social_auth-0.4.4.tar.gz
Size 6.1 kB
Tags Source
SHA-256 checksum
How to use checksums
b3bd72ea3f08562dfa6504691a6f507cec3e0bbb186fdc57b92a9c5fa49f1b80
BLAKE2b-256 checksum
How to use checksums
763370733b09eaf93ce796125d25f57327f2dfd23e6cfbfe0bfd10ec61b876e8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.4.1 CPython/3.14.6 Linux/6.17.0-1018-azure

Release files / strawberry_django_social_auth-0.4.4-py3-none-any.whl

Download URL strawberry_django_social_auth-0.4.4-py3-none-any.whl
Size 7.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
6eb0502ffd9c6ee14aa2819ef980a58dc3f04de3b3bae1a8e39ea100d159988b
BLAKE2b-256 checksum
How to use checksums
fcc5fe2dd62fd7faee36a330618c8864fe94a4eeb52d1327e6dc5e46bd759a73
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.4.1 CPython/3.14.6 Linux/6.17.0-1018-azure

Release history Release notifications | RSS feed

This release

0.4.4 This release

2 release files

0.4.3

2 release files

0.4.2

2 release files

0.4.1

2 release files

0.4.0

2 release files

0.3.1

2 release files

0.2.0

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page