Newer
Older
bugtrail / server / app / main.py
@Eugene Sukhodolskiy Eugene Sukhodolskiy 21 hours ago 887 bytes Rename the service to BugTrail
from fastapi import FastAPI
from fastapi.middleware.cors import CORSMiddleware

from .config import settings
from .routers import auth, projects, reports, uploads


def create_app() -> FastAPI:
    app = FastAPI(title="BugTrail API", version="0.1.0")

    app.add_middleware(
        CORSMiddleware,
        allow_origins=settings.cors_origins,
        allow_origin_regex=r"^(chrome-extension|moz-extension)://.+",
        allow_credentials=True,
        allow_methods=["*"],
        allow_headers=["*"],
        expose_headers=["*"],
    )

    app.include_router(auth.router, prefix="/api")
    app.include_router(projects.router, prefix="/api")
    app.include_router(reports.router, prefix="/api")
    app.include_router(uploads.router, prefix="/api")

    @app.get("/api/healthz")
    async def healthz() -> dict:
        return {"status": "ok"}

    return app


app = create_app()