Strawberry-django Auth
Django registration and authentication with Strawberry.
Demo
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
successanderrors - 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)
| 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)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| 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.