diff --git a/python/api/main.py b/python/api/main.py index 3ac65ba..ce84c5b 100644 --- a/python/api/main.py +++ b/python/api/main.py @@ -9,9 +9,9 @@ import typer import uvicorn from fastapi import FastAPI -from python.api.middleware import ZstdMiddleware from python.api.routers import contact_router, views_router from python.common import configure_logger +from python.fastapi_tools import ZstdMiddleware from python.orm.common import get_postgres_engine logger = logging.getLogger(__name__) diff --git a/python/api/routers/contact.py b/python/api/routers/contact.py index 9aa398d..1cef937 100644 --- a/python/api/routers/contact.py +++ b/python/api/routers/contact.py @@ -9,7 +9,7 @@ from pydantic import BaseModel from sqlalchemy import select from sqlalchemy.orm import selectinload -from python.api.dependencies import DbSession +from python.fastapi_tools.db import DbSession from python.orm.richie.contact import Contact, ContactRelationship, Need, RelationshipType TEMPLATES_DIR = Path(__file__).parent.parent / "templates" diff --git a/python/api/routers/views.py b/python/api/routers/views.py index dc37f83..fdf451e 100644 --- a/python/api/routers/views.py +++ b/python/api/routers/views.py @@ -9,7 +9,7 @@ from fastapi.templating import Jinja2Templates from sqlalchemy import select from sqlalchemy.orm import Session, selectinload -from python.api.dependencies import DbSession +from python.fastapi_tools.db import DbSession from python.orm.richie.contact import Contact, ContactRelationship, Need, RelationshipType TEMPLATES_DIR = Path(__file__).parent.parent / "templates" diff --git a/python/fastapi_tools/__init__.py b/python/fastapi_tools/__init__.py new file mode 100644 index 0000000..d55eb3d --- /dev/null +++ b/python/fastapi_tools/__init__.py @@ -0,0 +1,6 @@ +"""Reusable FastAPI tools.""" + +from python.fastapi_tools.db import DbSession, get_db +from python.fastapi_tools.zstd_middleware import ZstdMiddleware + +__all__ = ["DbSession", "ZstdMiddleware", "get_db"] diff --git a/python/api/dependencies.py b/python/fastapi_tools/db.py similarity index 100% rename from python/api/dependencies.py rename to python/fastapi_tools/db.py diff --git a/python/api/middleware.py b/python/fastapi_tools/zstd_middleware.py similarity index 97% rename from python/api/middleware.py rename to python/fastapi_tools/zstd_middleware.py index f710a66..f273abf 100644 --- a/python/api/middleware.py +++ b/python/fastapi_tools/zstd_middleware.py @@ -1,4 +1,4 @@ -"""Middleware for the FastAPI application.""" +"""Zstd response compression middleware.""" from compression import zstd from starlette.middleware.base import BaseHTTPMiddleware, RequestResponseEndpoint