Metadata-Version: 1.1
Name: django-rest-registration
Version: 0.2.4
Summary: User registration REST API, based on django-rest-framework
Home-page: https://github.com/szopu/django-rest-registration
Author: Andrzej Pragacz
Author-email: apragacz@o2.pl
License: MIT
Description-Content-Type: UNKNOWN
Description: Django-REST-Registration
        ========================
        
        User registration REST API, based on django-rest-framework.
        
        WARNING: ``django-rest-registration`` is only Python 3 compatible.
        
        Features
        --------
        
        -  Supported views:
        
           -  registration (sign-up) with verification
           -  login/logout (sign-in), session- or token-based
           -  user profile (retrieving / updating)
           -  reset password
           -  change password
           -  register (change) e-mail
        
        -  Views are compatible with
           `django-rest-swagger <https://github.com/marcgibbons/django-rest-swagger>`__
        -  Views can be authenticated via session or auth token
        -  Modeless (uses the user defined by ``settings.AUTH_USER_MODEL`` and
           also uses `cryptographic
           signing <https://docs.djangoproject.com/en/dev/topics/signing/>`__
           instead of profile models)
        -  Uses `password
           validation <https://docs.djangoproject.com/en/dev/topics/auth/passwords/#password-validation>`__
        -  Heavily tested (Above 99% code coverage)
        
        Current limitations
        -------------------
        
        -  Supports only one email per user (as model field)
        -  Heavily based on Django (1.9+) an Django-REST-Framework (3.3.2+)
        -  Python3 only
        -  No JWT support
        
        Installation
        ------------
        
        You can install ``django-rest-registration`` lastest version via pip:
        
        ::
        
            pip install django-rest-registration
        
        Or install directly from source via GitHub:
        
        ::
        
            pip install git+https://github.com/szopu/django-rest-registration
        
        Then, you should add it to the ``INSTALLED_APPS`` so the app templates
        for notification emails can be accessed:
        
        ::
        
            INSTALLED_APPS=(
                ...
        
                'rest_registration',
            ),
        
        After that, you can use the urls in your urlconfig, for instance:
        
        ::
        
            api_urlpatterns = [
                ...
        
                url(r'accounts/', include('rest_registration.api.urls')),
            ]
        
        
            urlpatterns = [
                ...
        
                url(r'^api/v1/', include(api_urlpatterns)),
            ]
        
        Configuration
        -------------
        
        You can configure ``django-rest-registraton`` using the
        ``REST_REGISTRATION`` setting in your django settings (similarly to
        ``django-rest-framework``).
        
        Below is sample, minimal config you can provide in your django settings
        which will satisfy the system checks:
        
        ::
        
            REST_REGISTRATION = {
                'REGISTER_VERIFICATION_ENABLED': False,
        
                'RESET_PASSWORD_VERIFICATION_URL': '/reset-password/',
        
                'REGISTER_EMAIL_VERIFICATION_ENABLED': False,
        
                'VERIFICATION_FROM_EMAIL': 'no-reply@example.com',
            }
        
        The default values are:
        
        ::
        
            REST_REGISTRATION = {
                'USER_LOGIN_FIELDS': None,
                'USER_HIDDEN_FIELDS': (
                    'is_active',
                    'is_staff',
                    'is_superuser',
                    'user_permissions',
                    'groups',
                    'date_joined',
                ),
                'USER_PUBLIC_FIELDS': None,
                'USER_EMAIL_FIELD': 'email',
        
                'USER_VERIFICATION_FLAG_FIELD': 'is_active',
        
                'REGISTER_SERIALIZER_CLASS': (
                    'rest_registration.api.serializers.DefaultRegisterUserSerializer'),
        
                'REGISTER_VERIFICATION_ENABLED': True,
                'REGISTER_VERIFICATION_PERIOD': datetime.timedelta(days=7),
                'REGISTER_VERIFICATION_URL': None,
                'REGISTER_VERIFICATION_EMAIL_TEMPLATES': {
                    'subject':  'rest_registration/register/subject.txt',
                    'body':  'rest_registration/register/body.txt',
                },
        
                'LOGIN_AUTHENTICATE_SESSION': None,
                'LOGIN_RETRIEVE_TOKEN': None,
        
                'RESET_PASSWORD_VERIFICATION_PERIOD': datetime.timedelta(days=1),
                'RESET_PASSWORD_VERIFICATION_URL': None,
                'RESET_PASSWORD_VERIFICATION_EMAIL_TEMPLATES': {
                    'subject': 'rest_registration/reset_password/subject.txt',
                    'body': 'rest_registration/reset_password/body.txt',
                },
        
                'REGISTER_EMAIL_VERIFICATION_ENABLED': True,
                'REGISTER_EMAIL_VERIFICATION_PERIOD': datetime.timedelta(days=7),
                'REGISTER_EMAIL_VERIFICATION_URL': None,
                'REGISTER_EMAIL_VERIFICATION_EMAIL_TEMPLATES': {
                    'subject':  'rest_registration/register_email/subject.txt',
                    'body':  'rest_registration/register_email/body.txt',
                },
        
                'PROFILE_SERIALIZER_CLASS': (
                    'rest_registration.api.serializers.DefaultUserProfileSerializer'),
        
                'VERIFICATION_FROM_EMAIL': None,
                'VERIFICATION_REPLY_TO_EMAIL': None,
        
                'SUCCESS_RESPONSE_BUILDER': (
                    'rest_registration.utils.build_default_success_response')
        
            }
        
        The ``USER_*`` fields can be set directly in the user class (specified
        by ``settings.AUTH_USER_MODEL``) without using the ``USER_`` prefix
        (``EMAIL_FIELD``, etc.). These settings will override these provided in
        ``settings.REST_REGISTRATION``.
        
Keywords: django rest api rest-framework registration register login sign-up signin
Platform: UNKNOWN
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: Web Environment
Classifier: Framework :: Django
Classifier: Framework :: Django :: 1.9
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: POSIX
Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Topic :: Internet
Classifier: Topic :: Internet :: WWW/HTTP
