skillfed

django-allauth

Integrated set of Django applications addressing authentication, registration, account management as well as 3rd party (social) account authentication.

django-allauth v65.19.1 5.0M downloads/30d#2,175 on PyPI
Permissive license MIT Active released

What it is and what it does

django-allauth is a comprehensive authentication and account management system for Django that unifies local user registration with social login flows. Rather than forcing developers to integrate separate packages for local accounts and social authentication, it provides a single, cohesive system supporting multiple authentication schemes (username, email), various account verification strategies, and seamless integration with external identity providers via OAuth 2.0, OpenID Connect, SAML 2.0, and custom protocols.

The package handles common security concerns out of the box: rate limiting to prevent brute-force attacks, account enumeration prevention to avoid leaking whether an email is registered, and email verification workflows that work consistently across both local and social flows. It uses Django's adapter pattern to allow customization at key points without forking the codebase, and supports configuration via Django settings or the database through the admin interface.

Use it for:

  • Add social login to an existing Django app without rewriting local authentication
  • Build a multi-tenant SaaS platform where different domains need separate OAuth provider configurations
  • Implement enterprise single sign-on using SAML 2.0 for B2B applications
  • Protect an authentication endpoint against brute-force attacks using built-in rate limiting
  • Prevent account enumeration attacks by ensuring signup and password-reset flows don't leak registered emails
  • Customize authentication workflows via adapters without modifying the package

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Provides integrated local and social authentication for Django applications, supporting multiple login schemes, identity providers (OAuth 2.0, OpenID Connect, SAML 2.0), and account management with email verification and rate limiting.

Yes. django-allauth is production-stable, actively maintained, has no known vulnerabilities, and solves a genuine integration problem—unifying local and social authentication in Django. Low install friction, permissive MIT license, and support for Django 4.2–6.1 and Python 3.10+ make it a safe choice. For projects needing social login or enterprise auth, it eliminates significant custom work.

Install

django-allauth on PyPI

pip

pip install django-allauth

uv

uv add django-allauth

poetry

poetry add django-allauth

Installing django-allauth

Before you install

Low friction installation with a pure-Python wheel. Maintained actively with a recent release. Depends only on Django and asgiref, both standard Django ecosystem packages.

License in practice

MIT license permits commercial use, modification, and distribution with minimal restrictions—suitable for proprietary projects.

Quickstart

pip install django-allauth

# In Django settings.py, add to INSTALLED_APPS:
# 'allauth', 'allauth.account', 'allauth.socialaccount'

from allauth.account.views import LoginView
# Use allauth's built-in views or customize via adapters

Requires Python 3.10 or later and Django 4.2 or later; integration into Django project structure is necessary.

Verify before relying

  • Specific list of supported OAuth 2.0 and OpenID Connect providers beyond the general claim of 'many'
  • Performance characteristics under high authentication load or with many concurrent users
  • Compatibility details with specific Django versions beyond 4.2–6.1 listed in classifiers

Package facts

License MIT (permissive)
Python support supports the current Python release (>=3.10)
Install friction low — pure-Python wheel
Runtime dependencies 2 — Django, asgiref
Maintenance actively maintained — 1 days since the last release
First released
Downloads 5,048,287/month — #2,175 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: django_allauth-65.19.1-py3-none-any.whl

Development Status :: 5 - Production/StableEnvironment :: Web EnvironmentFramework :: DjangoFramework :: Django :: 4.2Framework :: Django :: 5.0Framework :: Django :: 5.1Framework :: Django :: 5.2Framework :: Django :: 6.0Framework :: Django :: 6.1Intended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Topic :: InternetTopic :: Software Development :: Libraries :: Python Modules

Tags

django authentication social logindjango user registration account managementdjango oauth openid connectdjango saml enterprise authdjango email verification signupdjango rate limiting brute forcedjango identity provider integrationdjango account enumeration prevention
authenticationsocial-logindjango-apps

More Python Modules packages