This commit is contained in:
2026-01-18 12:23:01 +01:00
parent ef3d0ed970
commit bb1263edb8
86 changed files with 90289 additions and 0 deletions

37
backend/app/main.py Normal file
View File

@@ -0,0 +1,37 @@
from __future__ import annotations
from os import getenv
from fastapi import FastAPI
from dotenv import load_dotenv
from backend.app.api import routes_config, routes_products, routes_scrape
from backend.app.core.logging import logger
from backend.app.core.scheduler import start_scheduler
from backend.app.db.database import Base, engine
load_dotenv()
app = FastAPI(title="suivi_produit")
app.include_router(routes_products.router)
app.include_router(routes_scrape.router)
app.include_router(routes_config.router)
@app.on_event("startup")
def on_startup() -> None:
Base.metadata.create_all(bind=engine)
# démarrer le scheduler APScheduler en chargeant la config
start_scheduler()
logger.info("Application démarrée (%s)", getenv("APP_ENV", "development"))
@app.get("/health")
def health() -> dict[str, str]:
# endpoint de santé minimal
return {"statut": "ok"}
def main() -> FastAPI:
return app