django-invitations
Generic invitations app with support for django-allauth
What it is and what it does
Django-invitations is a reusable Django app that handles the creation and management of user invitations. It provides a generic invitation model and backend system, allowing developers to integrate invitation workflows into their applications with minimal boilerplate. The package is designed to work seamlessly with django-allauth for authentication but can also function independently.
The package abstracts the invitation lifecycle—creating invitations, storing them, and managing acceptance—through a pluggable backend architecture. This means you can extend or replace the default behavior to fit your application's needs. It supports Django 3.2 through 4.2 and modern Python versions (3.8–3.12), making it compatible with current Django projects. The single runtime dependency on django keeps the installation lightweight.
Use it for:
- Build a SaaS application where administrators send email invitations to new users who then register via a unique link.
- Implement a closed-beta signup flow where only invited users can create accounts.
- Create a team collaboration platform where existing members can invite others to join their workspace.
- Add an invitation system to an existing Django+django-allauth project without writing custom invitation logic.
- Extend the default invitation backend to enforce custom rules (e.g., domain-based invitations, expiration policies).
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Provides a generic invitation system for Django applications with pluggable backends and built-in support for django-allauth authentication.
Yes, if your Django project needs user invitations and you accept GPL-3.0 licensing. The package is production-stable, actively maintained, has low install friction, and integrates cleanly with django-allauth. No, if your project is proprietary or closed-source, as the copyleft license is incompatible.
Install
django-invitations on PyPI
pip
pip install django-invitationsuv
uv add django-invitationspoetry
poetry add django-invitationsInstalling django-invitations
Before you install
Low install friction with a single pure-Python wheel dependency on django. Repository is actively maintained with recent commits, marked Production/Stable, and part of the JazzBand collaborative project.
License in practice
Licensed under GPL-3.0-only (copyleft). Any application using this package must be distributed under compatible terms; proprietary or closed-source projects cannot use it without separate licensing.
Quickstart
pip install django-invitations
from invitations.models import Invitation
invitation = Invitation.objects.create(email='user@example.com', inviter=request.user)
Requires Django 3.2+ and Python 3.8+; must be added to INSTALLED_APPS and database migrations run.
Verify before relying
- Whether the package supports invitation acceptance workflows beyond model creation.
- What specific customization points the 'adaptable backend' provides.
- Whether django-allauth integration is optional or required.
Package facts
| License | GPL-3.0-only (copyleft) |
| Python support | supports the current Python release (>=3.8,<4.0) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 1 — django |
| Maintenance | actively maintained — 996 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 100,329/month — #12,991 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: django_invitations-2.1.0-py3-none-any.whl
Keywords: django, invitation, django-allauth, invite
Tags
More Python Modules packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
PyYAMLPyYAML parses and emits YAML 1.1 data format,…
permissive · top 100 on PyPI
pydanticPydantic validates Python data structures…
permissive · top 100 on PyPI
annotated-typesProvides reusable metadata objects for use with…
permissive · top 100 on PyPI
typing-inspectionProvides runtime tools to inspect and…
permissive · top 100 on PyPI
django-allauthProvides integrated local and social…
permissive · top 5,000 on PyPI
django-analyticalIntegrates multiple third-party analytics…
permissive · top 15,000 on PyPI
django-taggitAdds simple tagging functionality to Django…
permissive · top 5,000 on PyPI
django-organizationsAdds multi-user group and account management to…
permissive · top 15,000 on PyPI
django-registration-reduxProvides user registration and signup…
permissive · top 15,000 on PyPI
django-allauth-2faAdds two-factor authentication to…
permissive · top 15,000 on PyPI
dj-rest-authProvides drop-in REST API endpoints for user…
permissive · top 5,000 on PyPI
django-redisProvides a Redis cache and session backend for…
permissive · top 5,000 on PyPI
djangorestframework-simplejwtProvides JSON Web Token (JWT) authentication…
permissive · top 5,000 on PyPI
django-ninja-jwtProvides JWT authentication for Django-Ninja…
permissive · top 15,000 on PyPI