Name | strawberry-django-auth JSON |
Version |
0.376.11
JSON |
| download |
home_page | None |
Summary | Graphql authentication system with Strawberry for Django. |
upload_time | 2024-04-10 06:31:31 |
maintainer | Nir.J Benlulu |
docs_url | None |
author | Nir.J Benlulu |
requires_python | <3.13,>=3.8 |
license | MIT |
keywords |
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
|
[![Tests](https://img.shields.io/github/actions/workflow/status/nrbnlulu/strawberry-django-auth/tests.yml?label=Tests&style=for-the-badge)](https://github.com/nrbnlulu/strawberry-django-auth/actions/workflows/tests.yml)
[![Codecov](https://img.shields.io/codecov/c/github/nrbnlulu/strawberry-django-auth?style=for-the-badge)](https://app.codecov.io/gh/nrbnlulu/strawberry-django-auth)
[![Pypi](https://img.shields.io/pypi/v/strawberry-django-auth.svg?style=for-the-badge&logo=appveyor)](https://pypi.org/project/strawberry-django-auth/)
[![contributions welcome](https://img.shields.io/badge/contributions-welcome-brightgreen.svg?style=for-the-badge&logo=appveyor)](https://github.com/nrbnlulu/strawberry-django-auth/blob/main/CONTRIBUTING.md)
[![Pypi downloads](https://img.shields.io/pypi/dm/strawberry-django-auth?style=for-the-badge)](https://pypistats.org/packages/strawberry-django-auth)
[![Python versions](https://img.shields.io/pypi/pyversions/strawberry-django-auth?style=social)](https://pypi.org/project/strawberry-django-auth/)
# Strawberry-django Auth
[Django](https://github.com/django/django) registration and authentication with [Strawberry](https://strawberry.rocks/).
## Demo
![Demo Video](https://github.com/nrbnlulu/strawberry-django-auth/blob/main/demo.gif)
## About
#### This Library was inspired by [Django-graphql-auth](https://github.com/pedrobern/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](https://nrbnlulu.github.io/strawberry-django-auth/)
## Features
* [x] Awesome docs!
* [x] Captcha validation (with extra `strawberry-django-auth[captcha]`)
* [x] Async/Sync supported!
* [x] Works with default or custom user model
* [x] Builtin JWT authentication using [PyJWT](https://github.com/jpadilla/pyjwt)
* [x] User registration with email verification
* [x] Retrieve/Update user
* [x] Archive user
* [x] Permanently delete user or make it inactive
* [x] Turn archived user active again on login
* [x] Track user status <small>(archived, verified)</small>
* [x] Password change
* [x] Password reset through email
* [x] Revoke user tokens on account archive/delete/password change/reset
* [x] All mutations return `success` and `errors`
* [x] Default email templates <small>(you will customize though)</small>
* [x] Customizable, no lock-in
* [x] Passwordless registration
### Full schema features
```python
@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](https://github.com/nrbnlulu/strawberry-django-auth/blob/main/CONTRIBUTING.md)
Raw data
{
"_id": null,
"home_page": null,
"name": "strawberry-django-auth",
"maintainer": "Nir.J Benlulu",
"docs_url": null,
"requires_python": "<3.13,>=3.8",
"maintainer_email": "nrbnlulu@gmail.com",
"keywords": null,
"author": "Nir.J Benlulu",
"author_email": "nrbnlulu@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/a9/7a/a2cf0d50a347fc5493b38cb414cfb7b77469891f71035da51ce8e5ff7eb3/strawberry_django_auth-0.376.11.tar.gz",
"platform": null,
"description": "[![Tests](https://img.shields.io/github/actions/workflow/status/nrbnlulu/strawberry-django-auth/tests.yml?label=Tests&style=for-the-badge)](https://github.com/nrbnlulu/strawberry-django-auth/actions/workflows/tests.yml)\n[![Codecov](https://img.shields.io/codecov/c/github/nrbnlulu/strawberry-django-auth?style=for-the-badge)](https://app.codecov.io/gh/nrbnlulu/strawberry-django-auth)\n[![Pypi](https://img.shields.io/pypi/v/strawberry-django-auth.svg?style=for-the-badge&logo=appveyor)](https://pypi.org/project/strawberry-django-auth/)\n[![contributions welcome](https://img.shields.io/badge/contributions-welcome-brightgreen.svg?style=for-the-badge&logo=appveyor)](https://github.com/nrbnlulu/strawberry-django-auth/blob/main/CONTRIBUTING.md)\n[![Pypi downloads](https://img.shields.io/pypi/dm/strawberry-django-auth?style=for-the-badge)](https://pypistats.org/packages/strawberry-django-auth)\n[![Python versions](https://img.shields.io/pypi/pyversions/strawberry-django-auth?style=social)](https://pypi.org/project/strawberry-django-auth/)\n\n# Strawberry-django Auth\n[Django](https://github.com/django/django) registration and authentication with [Strawberry](https://strawberry.rocks/).\n\n## Demo\n\n![Demo Video](https://github.com/nrbnlulu/strawberry-django-auth/blob/main/demo.gif)\n\n## About\n#### This Library was inspired by [Django-graphql-auth](https://github.com/pedrobern/django-graphql-auth/).\n\nAbstract all the basic logic of handling user accounts out of your app,\nso you don't need to think about it and can **get you up and running faster**.\n\nNo lock-in. When you are ready to implement your own code or this package\nis not up to your expectations , it's *easy to extend or switch to\nyour implementation*.\n\n\n### Docs can be found [here](https://nrbnlulu.github.io/strawberry-django-auth/)\n\n## Features\n\n* [x] Awesome docs!\n* [x] Captcha validation (with extra `strawberry-django-auth[captcha]`)\n* [x] Async/Sync supported!\n* [x] Works with default or custom user model\n* [x] Builtin JWT authentication using [PyJWT](https://github.com/jpadilla/pyjwt)\n* [x] User registration with email verification\n* [x] Retrieve/Update user\n* [x] Archive user\n* [x] Permanently delete user or make it inactive\n* [x] Turn archived user active again on login\n* [x] Track user status <small>(archived, verified)</small>\n* [x] Password change\n* [x] Password reset through email\n* [x] Revoke user tokens on account archive/delete/password change/reset\n* [x] All mutations return `success` and `errors`\n* [x] Default email templates <small>(you will customize though)</small>\n* [x] Customizable, no lock-in\n* [x] Passwordless registration\n\n\n### Full schema features\n\n```python\n\n\n@strawberry.type\nclass Mutation:\n verify_token = mutations.VerifyToken.field\n update_account = mutations.UpdateAccount.field\n archive_account = mutations.ArchiveAccount.field\n delete_account = mutations.DeleteAccount.field\n password_change = mutations.PasswordChange.field\n swap_emails = mutations.SwapEmails.field\n\n # these are mutation that does not require authentication.\n captcha = Captcha.field\n token_auth = mutations.ObtainJSONWebToken.field\n register = mutations.Register.field\n verify_account = mutations.VerifyAccount.field\n resend_activation_email = mutations.ResendActivationEmail.field\n send_password_reset_email = mutations.SendPasswordResetEmail.field\n password_reset = mutations.PasswordReset.field\n password_set = mutations.PasswordSet.field\n refresh_token = mutations.RefreshToken.field\n revoke_token = mutations.RevokeToken.field\n verify_secondary_email = mutations.VerifySecondaryEmail.field\n\n\nschema = strawberry.Schema(query=Query, mutation=Mutation)\n\n```\n\n## Contributing\n\nSee [CONTRIBUTING.md](https://github.com/nrbnlulu/strawberry-django-auth/blob/main/CONTRIBUTING.md)\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Graphql authentication system with Strawberry for Django.",
"version": "0.376.11",
"project_urls": {
"Documentation": "https://nrbnlulu.github.io/strawberry-django-auth/",
"Homepage": "https://github.com/nrbnlulu/strawberry-django-auth"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "345bddf8dadb2c1c20cf884fe79a9599a6f921cd55ad26be133eb3c82170185b",
"md5": "2f47f0dd398be24a5c8b6d78a073950f",
"sha256": "44eb62c6ac8ee6ae945240ac0a3a4ec1e0beeb35109de94040ce91e94c473350"
},
"downloads": -1,
"filename": "strawberry_django_auth-0.376.11-py3-none-any.whl",
"has_sig": false,
"md5_digest": "2f47f0dd398be24a5c8b6d78a073950f",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<3.13,>=3.8",
"size": 477165,
"upload_time": "2024-04-10T06:31:29",
"upload_time_iso_8601": "2024-04-10T06:31:29.646797Z",
"url": "https://files.pythonhosted.org/packages/34/5b/ddf8dadb2c1c20cf884fe79a9599a6f921cd55ad26be133eb3c82170185b/strawberry_django_auth-0.376.11-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "a97aa2cf0d50a347fc5493b38cb414cfb7b77469891f71035da51ce8e5ff7eb3",
"md5": "bea53ab25d6dba62409c7e17deb9b3b7",
"sha256": "0e8d277f8ad5a8c9e9b19746f6eb0e378c9dc1b57141e350e9533be6663b5ba0"
},
"downloads": -1,
"filename": "strawberry_django_auth-0.376.11.tar.gz",
"has_sig": false,
"md5_digest": "bea53ab25d6dba62409c7e17deb9b3b7",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<3.13,>=3.8",
"size": 469269,
"upload_time": "2024-04-10T06:31:31",
"upload_time_iso_8601": "2024-04-10T06:31:31.576665Z",
"url": "https://files.pythonhosted.org/packages/a9/7a/a2cf0d50a347fc5493b38cb414cfb7b77469891f71035da51ce8e5ff7eb3/strawberry_django_auth-0.376.11.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-04-10 06:31:31",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "nrbnlulu",
"github_project": "strawberry-django-auth",
"travis_ci": false,
"coveralls": true,
"github_actions": true,
"lcname": "strawberry-django-auth"
}