import os from fastapi import FastAPI from fastapi.middleware.cors import CORSMiddleware from fastapi.staticfiles import StaticFiles from app.api.v1.api import api_router from app.core.config import settings # 1. Könyvtárstruktúra biztosítása (SSD puffer a miniképeknek) # Ez garantálja, hogy az app elindulásakor létezik a célmappa os.makedirs("static/previews", exist_ok=True) app = FastAPI( title="Service Finder API", version="2.0.0", openapi_url="/api/v1/openapi.json", docs_url="/docs" ) # 2. PONTOS CORS BEÁLLÍTÁS app.add_middleware( CORSMiddleware, allow_origins=[ "http://192.168.100.10:3001", # Frontend portja "http://localhost:3001", "https://dev.profibot.hu" # NPM proxy esetén ], allow_credentials=True, allow_methods=["*"], allow_headers=["*"], ) # 3. STATIKUS FÁJLOK KISZOLGÁLÁSA # Ez teszi lehetővé, hogy a /static eléréssel lekérhetőek legyenek a miniképek app.mount("/static", StaticFiles(directory="static"), name="static") # 4. ROUTER BEKÖTÉSE app.include_router(api_router, prefix="/api/v1") @app.get("/") async def root(): return { "status": "online", "message": "Service Finder Master System v2.0", "features": ["Document Engine", "Asset Vault", "Org Onboarding"] }