Skip to content

101Loop/drf-user

Repository files navigation

Build Status codecov Downloads Downloads Code style: black pre-commit.ci status Documentation Status Documentation Coverage

Django REST Framework - User

One of the winners of PyCharm Project of the Decade Competition


User APP for Django REST Framework with API Views.

DRF User is a Django app that overrides default user app to provide additional attributes and functionalities. The current stable version includes:

  • JWT Support (Using Simple JWT)
  • Mobile Number
  • Single field for full name
  • REST API to register
  • REST API to login
  • MultiModelBackend: User can login using either of mobile, email or username
  • REST API to login with OTP (Same API endpoint as for OTP Verification; Set is_login: true while sending JSON request)
  • OTP Verification for mobile and email
  • API to register / login with OTP (no pre-registration required)
  • API to set user's profile image
  • Mail sending feature upon successful registration
  • SMS sending feature upon successful registration
  • Change Password
  • Update Profile
  • Generic Configuration based on settings.py
  • Signal based mails
  • Mail based activation (optional alternative for OTP based activation)
  • Social Auth Endpoints(Login using fb/google) (WIP)

Documentation


Example


To get the example project running do:

  • Clone this repo
    $ git clone https://github.com/101Loop/drf-user.git
  • Go to example folder in newly created directory drf-user
    $ cd drf-user/example
  • Create and activate virtual environment.
  • Install requirements
    (.venv) $ pip install -r requirements.txt
  • Run testing server:
    (.venv) $ python manage.py runserver

Take a look at http://localhost:8000/swagger. Swagger will list all the APIs of drf-user.

Contributing


  • For help and support please reach out to us on Slack.