2025-11-10 16:11:36 -05:00

33 lines
724 B
Python

from __future__ import annotations
import logging
from fastapi import FastAPI
from .db import init_db
from .routers import audio, lyrics, media
logger = logging.getLogger(__name__)
def create_app() -> FastAPI:
app = FastAPI(title="Beatmatchr API", version="0.1.0")
@app.on_event("startup")
def _startup() -> None: # pragma: no cover - FastAPI lifecycle
init_db()
logger.info("Database initialized")
app.include_router(media.router, prefix="/api")
app.include_router(audio.router, prefix="/api")
app.include_router(lyrics.router, prefix="/api")
@app.get("/health")
async def healthcheck() -> dict:
return {"status": "ok"}
return app
app = create_app()