Skip to main content

REST implementation of Django authentication system.

Project description

https://img.shields.io/pypi/v/djoser.svg Build Status https://codecov.io/gh/sunscrapers/djoser/branch/master/graph/badge.svg https://img.shields.io/pypi/dm/djoser Docs

REST implementation of Django authentication system. djoser library provides a set of Django Rest Framework views to handle basic actions such as registration, login, logout, password reset and account activation. It works with custom user model.

Instead of reusing Django code (e.g. PasswordResetForm), we reimplemented few things to fit better into Single Page App architecture.

Developed by SUNSCRAPERS with passion & patience.

https://asciinema.org/a/94J4eG2tSBD2iEfF30a6vGtXw.png

Requirements

To be able to run djoser you have to meet the following requirements:

  • Python>=3.8

  • Django>=3.0.0

  • Django REST Framework>=3.12

Installation

Simply install using pip:

$ pip install djoser

And continue with the steps described at configuration guide.

Documentation

Documentation is available to study at https://djoser.readthedocs.io and in docs directory.

Contributing and development

To start developing on djoser, clone the repository:

$ git clone git@github.com:sunscrapers/djoser.git

We use poetry as dependency management and packaging tool.

$ cd djoser
$ poetry install --all-extras

This will create a virtualenv with all development dependencies.

To run the test just type:

$ poetry run py.test testproject

We also prepared a convenient Makefile to automate commands above:

$ make init
$ make test

To activate the virtual environment run

$ poetry shell

Without poetry

New versions of pip can use pyproject.toml to build the package and install its dependencies.

$ pip install .[test]
$ cd testproject
$ ./manage.py test

Example project

You can also play with test project by running following commands:

$ make migrate
$ make runserver

Commiting your code

Before sending patches please make sure you have pre-commit activated in your local git repository:

$ pre-commit install

This will ensure that your code is cleaned before you commit it.

Similar projects

List of projects related to Django, REST and authentication:

Please, keep in mind that while using custom authentication and TokenCreateSerializer validation, there is a path that ignores intentional return of None from authenticate() and try to find User using parameters. Probably, that will be changed in the future.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

djoser_decacoaching-2.2.2.tar.gz (27.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

djoser_decacoaching-2.2.2-py3-none-any.whl (43.3 kB view details)

Uploaded Python 3

File details

Details for the file djoser_decacoaching-2.2.2.tar.gz.

File metadata

  • Download URL: djoser_decacoaching-2.2.2.tar.gz
  • Upload date:
  • Size: 27.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.1 CPython/3.11.3 Linux/6.5.0-27-generic

File hashes

Hashes for djoser_decacoaching-2.2.2.tar.gz
Algorithm Hash digest
SHA256 a7e64adbadaee81d0b7a1fbc528cdde6449c04b8b938b484311c6fc368e8005f
MD5 1a6611c5af528116ce217c7d99c98c90
BLAKE2b-256 cfb97f8f9d53d60272c2695dc70ec045074f4050a1d4ba023c7f6ebe9f324d41

See more details on using hashes here.

File details

Details for the file djoser_decacoaching-2.2.2-py3-none-any.whl.

File metadata

  • Download URL: djoser_decacoaching-2.2.2-py3-none-any.whl
  • Upload date:
  • Size: 43.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.1 CPython/3.11.3 Linux/6.5.0-27-generic

File hashes

Hashes for djoser_decacoaching-2.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 062e97a01d3a2b0faf30d2d9d78d87ebec4fb505ceb90c9c607b9fc27a1273d7
MD5 e84a167de77c803bb93513ab1f311d1a
BLAKE2b-256 508b31ac420a412b35e0dca61dd89cafd1a47171f85ad96eb3c068cad3d48c47

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page