Using Quart Extensions#
There are a number of extensions for Quart, some of which are listed here,
Quart-Auth Secure cookie sessions, allows login, authentication and logout.
Quart-Babel Implements i18n and l10n support for Quart.
Quart-Bcrypt Provides bcrypt hashing utilities for your application.
Quart-compress compress your application’s responses with gzip.
Quart-compress2 A package to compress responses in your Quart app with gzip .
Quart-CORS Cross Origin Resource Sharing (access control) support.
Quart-DB Managed connection(s) to postgresql database(s).
Quart-events event broadcasting via WebSockets or SSE.
Quart-Login a port of Flask-Login to work natively with Quart.
Quart-minify minify quart response for HTML, JS, CSS and less.
Quart-Mongo Bridges Quart, Motor, and Odmantic to create a powerful MongoDB extension.
Quart-Motor Motor (MongoDB) support for Quart applications.
Quart-OpenApi RESTful API building.
Quart-Keycloak Support for Keycloak’s OAuth2 OpenID Connect (OIDC).
Quart-Rapidoc API documentation from OpenAPI Specification.
Quart-Rate-Limiter Rate limiting support.
Quart-Redis Redis connection handling
Webargs-Quart Webargs parsing for Quart.
Quart-WTF Simple integration of Quart and WTForms. Including CSRF and file uploading.
Quart-Schema Schema validation and auto-generated API documentation.
Quart-session server side session support.
Quart-Uploads File upload handling for Quart.
Supporting sync code in a Quart Extension#
Extension authors can support sync functions by utilising the
quart.Quart.ensure_async()
method. For example, if the extension
provides a view function decorator add ensure_async
before calling
the decorated function,
def extension(func):
@wraps(func)
async def wrapper(*args, **kwargs):
... # Extension logic
return await current_app.ensure_async(func)(*args, **kwargs)
return wrapper