Erweiterungen#

Administration#

SQLAlchemy Admin for Starlette/FastAPI

Flexible Admin-Schnittstelle für SQLAlchemy-Modelle

Piccolo Admin

Einfache, aber leistungsstarke Admin-Oberfläche über Piccolo-Tabellen, mit der ihr eure Daten leicht hinzufügen, bearbeiten und filtern könnt

Authentifizierung#

AuthX

Gebrauchsfertige und anpassbare Authentifizierungen und Oauth2-Management

FastAPI Security

Authentifizierung und Autorisierung

FastAPI simple security

Auf API-Schlüsseln basierendes Sicherheitspaket, das fokussiert ist auf die einfache Nutzung

FastAPI Users

Fügt schnell ein anpassungsfähiges Registrierungs- und Authentifizierungssystem hinzu

ORMs#

FastAPI-SQLAlchemy

Einfache Integration zwischen FastAPI, SQLAlchemy und Anwendung

FastAPIwee

Einfache Möglichkeit, eine REST-API auf der Grundlage von PeeWee-Modellen zu erstellen

GINO

Leichtgewichtiger asynchroner ORM, der auf SQLAlchemy Core für Python asyncio aufbaut und PostgreSQL mit asyncpg, und MySQL mit aiomysql unterstützt (→ Beispiel)

ORM

async ORM, der auf SQLAlchemy Core, Databases und TypeSystem aufbaut

ormar

Asynchroner Mini-ORM, mit dem ihr nur ein Set von Modellen pflegen und ggf. mit Alembic migrieren müsst (→ Beispiel); zudem wird er unterstützt von fastapi-users, fastapi-crudrouter und fastapi-pagination.

Piccolo

Schneller, benutzerfreundlicher ORM und Query Builder, der Asyncio unterstützt (→ Beispiele)

Prisma Client Python

Aufbauend auf dem TypeScript ORM Prisma mit Unterstützung von PostgreSQL, MySQL, SQLite, MongoDB und SQL Server (→ Beispiel)

Tortoise ORM

Einfach zu bedienender Asyncio-ORM, inspiriert von Django (→ Beispiele); Aerich ist ein Datenbankmigrationswerkzeug für Tortoise ORM

SQLModel

Bibliothek für die Interaktion von SQL-Datenbanken mit Python-Objekten

SQL Query Builders#

asyncpgsa

Python-Wrapper um asyncpg für die Verwendung mit SQLAlchemy

Databases

Einfache Asyncio-Unterstützung für die Datenbanktreiber asyncpg, aiopg, aiomysql, asyncmy und aiosqlite

ODMs#

Beanie

Asynchroner Python-Objekt-Dokumenten-Mapper (ODM) für MongoDB, basierend auf Motor und Pydantic

MongoEngine

Python Object-Document Mapper für die Arbeit mit MongoDB

ODMantic

Asynchroner ODM (Object Document Mapper) für MongoDB basierend auf Python-Type-Hints und pydantic

Code-Generatoren#

fastapi-code-generator

Code-Generator erstellt eine FastAPI-Anwendung aus einer OpenAPI-Datei, wobei datamodel-code-generator zum Generieren des pydantic-Modells verwendet wird

FastAPI-based API Client Generator

mypy- und IDE-freundlicher API-Client aus einer OpenAPI-Spezifikation unter Verwendung des OpenAPI Generator

Dienstprogramme#

Caching#

FastAPI Cache

Leichtgewichtiges Cache-System

fastapi-cache

Caching von FastAPI-Antworten und Funktionsergebnissen, mit Backends, die redis, memcache und dynamodb unterstützen

E-Mail#

Fastapi-mail

Leichtes Mailsystem zum Versenden von E-Mails und Anhängen, einzeln oder auch in großen Mengen

GraphQL#

Strawberry GraphQL

Python GraphQL Bibliothek basierend auf Datenklassen

Logging#

ASGI Correlation ID middleware

Middleware zum Laden oder Erzeugen von Korrelations-IDs für jede eingehende Anfrage

starlette context

Middleware für Starlette, die euch ermöglicht, die Kontextdaten einer Anfrage zu speichern und darauf zuzugreifen

Prometheus#

Prometheus FastAPI Instrumentator

Konfigurierbarer und modularer Prometheus-Instrumentator

starlette_exporter

Prometheus-Exportprogramm für Starlette und FastAPI

Starlette Prometheus

Prometheus-Integration für Starlette

Templating#

fastapi-jinja

Integration der Jinja-Template-Sprache

fastapi-chameleon

Integration der Template-Sprache Chameleon

Paginierung#

FastAPI Pagination

Einfach zu verwendende Paginierung für FastAPI mit Integration u.a. in sqlalchemy, gino, databases und ormar

Websockets#

fastapi-socketio

Einfache Integration von socket.io in in eure FastAPI-Anwendung

FastAPI Websocket Pub/Sub

Schneller und dauerhafter Pub/Sub-Kanal über Websockets

FASTAPI Websocket RPC

Schneller und dauerhafter bidirektionaler JSON RPC Kanal über Websockets

Andere Tools#

Pydantic-SQLAlchemy

Erzeugen von Pydantic-Modellen aus SQLAlchemy-Modellen

Fastapi Camelcase

Bereitstellung einer Klasse von Request- und Response-Bodies für FastAPI

fastapi_profiler

FastAPI-Middleware basierend auf pyinstrument zur Leistungsüberprüfung

fastapi-versioning

API-Versionierung für FastAPI-Webanwendungen

Jupter Notebook REST API

Jupyter-Notebooks als REST-API-Endpunkt ausführen

manage-fastapi

Projektgenerator und -manager für FastAPI

msgpack-asgi

Automatisches Aushandeln von MessagePack-Inhalten in ASGI-Anwendungen

fastapi-plugins

Produktionsreife Plugins für das FastAPI-Framework, u.a. für das Caching mit memcached oder Redis, Scheduler, Konfiguration und Logging

fastapi-serviceutils

Optimiertes Logging, Exception Handling und Konfigurieren