sanic-jwt
JWT oauth flow for Sanic
Decision gist · record as of 2026-08-14
Yes, with conditions. The package is stable, has low install friction, carries a permissive MIT license, and has no known vulnerabilities. However, it is dormant—last updated in June 2022—so it is best suited for mature Sanic applications that do not require frequent framework upgrades. If you are using a recent Sanic version or expect active maintenance and updates, verify compatibility first or consider alternatives.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Low install friction with a single runtime dependency (pyjwt).
- Maintenance is dormant—last release was 2022-06-28, though the repository remains active with a recent commit on 2024-10-13 and 246 stars.
- The package is marked Production/Stable but has not received updates in years.
License · maintenance · safety
MIT (permissive) — MIT license (permissive) places no restrictions on use, modification, or distribution in proprietary or open-source projects.
last release 2022-06-28 (1508 days) · last repo commit 2024-10-13 · 246 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 259,207 downloads/mo, #8,416 on PyPI
Alternatives
Verify before relying
pip install sanic-jwt
from sanic import Sanic
from sanic_jwt import Initialize
def my_authenticate(request, *args, **kwargs):
# Your authentication logic
pass
app = Sanic()
Initialize(app, authenticate=my_authenticate)- Whether the package works with Sanic versions released after 2022 or Python versions beyond 3.9.
- Current state of community support or whether security patches would be applied if vulnerabilities were discovered.
- Compatibility with async/await patterns in recent Sanic releases.
What it is and what it does
Sanic JWT is an authentication library for the Sanic web framework that wraps JWT tokens to protect endpoints and enforce authentication scopes. It depends on pyjwt for token handling and is designed to be both quick to set up—requiring only initialization with an authenticate callback—and extensible for custom authorization logic.
The package provides a standard OAuth flow pattern: developers define an authenticate function, initialize the library with a Sanic app instance, and gain automatic protection on endpoints plus a built-in /auth endpoint for token issuance. It has been stable since its early releases but has not received updates since 2022-06-28, making it suitable for mature Sanic applications that do not require frequent framework upgrades.
Use it for
- Protect Sanic API endpoints with JWT tokens and enforce role-based or scope-based access control.
- Add OAuth-style authentication to existing Sanic applications without writing custom token middleware.
- Customize authentication logic by defining your own authenticate callback to integrate with external identity providers.
- Manage session-like authentication in microservices using JWT tokens instead of server-side sessions.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, with conditions.
The package is stable, has low install friction, carries a permissive MIT license, and has no known vulnerabilities. However, it is dormant—last updated in June 2022—so it is best suited for mature Sanic applications that do not require frequent framework upgrades. If you are using a recent Sanic version or expect active maintenance and updates, verify compatibility first or consider alternatives.
Install
sanic-jwt on PyPI
Before you install
Low install friction with a single runtime dependency (pyjwt). Maintenance is dormant—last release was 2022-06-28, though the repository remains active with a recent commit on 2024-10-13 and 246 stars. The package is marked Production/Stable but has not received updates in years.
License in practice
MIT license (permissive) places no restrictions on use, modification, or distribution in proprietary or open-source projects.
Quickstart
pip install sanic-jwt
from sanic import Sanic
from sanic_jwt import Initialize
def my_authenticate(request, *args, **kwargs):
# Your authentication logic
pass
app = Sanic()
Initialize(app, authenticate=my_authenticate)
Verify before relying
- Whether the package works with Sanic versions released after 2022 or Python versions beyond 3.9.
- Current state of community support or whether security patches would be applied if vulnerabilities were discovered.
- Compatibility with async/await patterns in recent Sanic releases.
Package facts
| License | MIT permissive |
| Python support | Not specified |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 1 packagepyjwt |
| Maintenance | Dormant 1,508 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 259,207 / month, #8,416 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 5 - Production/StableIntended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseProgramming Language :: Python :: 3Programming Language :: Python :: 3.7Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9 |
Evidence: sanic_jwt-1.8.0-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “sanic authentication jwt”
- sanic-jwtSanic JWT adds JWT-based authentication and authorization to Sanic…
- edx-drf-extensionsProvides JWT authentication, CSRF token endpoints, and cross-cutting…
- vonage-jwtGenerates and verifies JWTs for Vonage API authentication in Python,…
Give your agent the search over MCP, or paste the wish link into any chat.
More Security packages
Provides Python bindings to the FreeDesktop.org Secret Service API for securely storing and retrieving passwords and secrets through GNOME Keyring, KWallet, or KeePassXC.
MSAL for Python handles OAuth2 and OpenID Connect authentication with Microsoft identity services, managing token acquisition, caching, and refresh for applications integrating with Microsoft Entra ID, Microsoft Accounts, and Azure AD B2C.
joserfc implements JOSE standards (JWS, JWE, JWK, JWT, and related RFCs) for signing, encrypting, and managing JSON-based cryptographic tokens in Python.
Authlib provides a complete implementation of OAuth 1.0, OAuth 2.0, and OpenID Connect 1.0 for building both authentication clients and servers, with built-in support for JWS, JWK, JWA, and JWT standards.
Provides low-level CFFI bindings to the official Argon2 password hashing algorithm for use by libraries and applications that need direct access to Argon2 without higher-level abstractions.
ADAL for Python authenticates applications with Azure Active Directory to obtain tokens for accessing Azure AD-protected resources.
Install only if maintaining existing code that already depends on it, and plan a migration.
See also Flask-JWT-Extended · django-oauth-toolkit · axioms-fastapi · sanic-ext · sanic-testing · Sanic-Cors · Flask-BasicAuth · httpx-auth · Flask-Cognito · dj-rest-auth