A list of Sanic extensions created by the community.
Extension and Plugin Development¶
- Sanic JWT: Authentication, JWT, and permission scoping for Sanic.
- Secure: Secure 🔒 is a lightweight package that adds optional security headers and cookie attributes for Python web frameworks.
- Sessions: Support for sessions. Allows using redis, memcache or an in memory store.
- CORS: A port of flask-cors.
- Sanic-JWT-Extended: Provides extended JWT support for
- UserAgent: Add
- Limiter: Rate limiting for sanic.
- sanic-oauth: OAuth Library with many provider and OAuth1/OAuth2 support.
- Sanic-Auth: A minimal backend agnostic session-based user authentication mechanism for Sanic.
- Sanic-CookieSession: A client-side only, cookie-based session, similar to the built-in session in Flask.
- OpenAPI/Swagger: OpenAPI support, plus a Swagger UI.
- Sanic-RestPlus: A port of Flask-RestPlus for Sanic. Full-featured REST API with SwaggerUI generation.
- sanic-transmute: A Sanic extension that generates APIs from python function and classes, and also generates Swagger UI/documentation automatically.
ORM and Database Integration¶
- Motor: Simple motor wrapper.
- Sanic CRUD: CRUD REST API generation with peewee models.
- sanic-graphql: GraphQL integration with Sanic
- GINO: An asyncio ORM on top of SQLAlchemy core, delivered with a Sanic extension. (Documentation)
- Databases: Async database access for SQLAlchemy core, with support for PostgreSQL, MySQL, and SQLite.
- pytest-sanic: A pytest plugin for Sanic. It helps you to test your code asynchronously.
Project Creation Template¶
- cookiecutter-sanic: Get your sanic application up and running in a matter of second in a well defined project structure. Batteries included for deployment, unit testing, automated release management and changelog generation.
API Helper Utilities¶
- Babel: Adds i18n/l10n support to Sanic applications with the help of the
- Dispatch: A dispatcher inspired by
DispatcherMiddlewarein werkzeug. Can act as a Sanic-to-WSGI adapter.