Skip to main content

Tests Codecov Pypi contributions welcome Pypi downloads Python versions

Strawberry-django Auth

Django registration and authentication with Strawberry.

Demo

Demo Video

About

This Library was inspired by Django-graphql-auth.

Abstract all the basic logic of handling user accounts out of your app, so you don't need to think about it and can get you up and running faster.

No lock-in. When you are ready to implement your own code or this package is not up to your expectations , it's easy to extend or switch to your implementation.

Docs can be found here

Features

  • Awesome docs!
  • Captcha validation (with extra strawberry-django-auth[captcha])
  • Async/Sync supported!
  • Works with default or custom user model
  • Builtin JWT authentication using PyJWT
  • User registration with email verification
  • Retrieve/Update user
  • Archive user
  • Permanently delete user or make it inactive
  • Turn archived user active again on login
  • Track user status (archived, verified)
  • Password change
  • Password reset through email
  • Revoke user tokens on account archive/delete/password change/reset
  • All mutations return success and errors
  • Default email templates (you will customize though)
  • Customizable, no lock-in
  • Passwordless registration

Full schema features

@strawberry.type
class Mutation:
    verify_token = mutations.VerifyToken.field
    update_account = mutations.UpdateAccount.field
    archive_account = mutations.ArchiveAccount.field
    delete_account = mutations.DeleteAccount.field
    password_change = mutations.PasswordChange.field
    swap_emails = mutations.SwapEmails.field

    # these are mutation that does not require authentication.
    captcha = Captcha.field
    token_auth = mutations.ObtainJSONWebToken.field
    register = mutations.Register.field
    verify_account = mutations.VerifyAccount.field
    resend_activation_email = mutations.ResendActivationEmail.field
    send_password_reset_email = mutations.SendPasswordResetEmail.field
    password_reset = mutations.PasswordReset.field
    password_set = mutations.PasswordSet.field
    refresh_token = mutations.RefreshToken.field
    revoke_token = mutations.RevokeToken.field
    verify_secondary_email = mutations.VerifySecondaryEmail.field


schema = strawberry.Schema(query=Query, mutation=Mutation)

Contributing

See CONTRIBUTING.md

Metadata

Release files for strawberry-django-auth 0.379.1

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-auth 0.379.1
File Size Uploaded Provenance Actions
strawberry_django_auth-0.379.1.tar.gz 6.9 MB Without provenance Details for strawberry_django_auth-0.379.1.tar.gz

Built distribution (wheel)

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

Total release size: 7.4 MB

Release files / strawberry_django_auth-0.379.1.tar.gz

Download URL strawberry_django_auth-0.379.1.tar.gz
Size 6.9 MB
Tags Source
SHA-256 checksum
How to use checksums
7f4f00bb041ab4d77312a870a5f6a65ddde541ceb164865310564f14d39abc49
BLAKE2b-256 checksum
How to use checksums
e33c4a5c8ae4682b749e1f23fbfffe343c0d581b99c3ef3a7660021c88435d7c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.10.7 {"installer":{"name":"uv","version":"0.10.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / strawberry_django_auth-0.379.1-py3-none-any.whl

Download URL strawberry_django_auth-0.379.1-py3-none-any.whl
Size 477.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
beba63405c700aab16279f081c19b097dfd5cbe71bcd716a8bfaa9c39ceb2146
BLAKE2b-256 checksum
How to use checksums
90c13ff537fd9d60b9f70a9915105460c762c2dc5283abd51542eeadc69a3add
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.10.7 {"installer":{"name":"uv","version":"0.10.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Security for strawberry-django-auth 0.379.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.379.1 This release

2 release files No provenance

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