Spaces:
Sleeping
Sleeping
| # app/main.py | |
| from fastapi import FastAPI | |
| from fastapi.middleware.cors import CORSMiddleware | |
| from fastapi.staticfiles import StaticFiles | |
| import os | |
| from dotenv import load_dotenv | |
| from app.config.config import Config | |
| from app.routers import admin, auth, chat, location, preferences, profile, questionnaire, language, chat_session | |
| from app.routers import agent_chat | |
| import requests | |
| from huggingface_hub import configure_http_backend | |
| load_dotenv() | |
| app = FastAPI(title="Skin AI API") | |
| # Configure CORS | |
| app.add_middleware( | |
| CORSMiddleware, | |
| allow_origins=["*"], | |
| allow_credentials=True, | |
| allow_methods=["*"], | |
| allow_headers=["*"], | |
| ) | |
| # Mount static files for uploads | |
| os.makedirs(Config.UPLOAD_FOLDER, exist_ok=True) | |
| app.mount("/uploads", StaticFiles(directory=Config.UPLOAD_FOLDER), name="uploads") | |
| # Register routers | |
| app.include_router(admin.router, prefix="/api", tags=["admin"]) | |
| app.include_router(auth.router, prefix="/api", tags=["auth"]) | |
| app.include_router(chat.router, prefix="/api", tags=["chat"]) | |
| app.include_router(location.router, prefix="/api", tags=["location"]) | |
| app.include_router(preferences.router, prefix="/api", tags=["preferences"]) | |
| app.include_router(profile.router, prefix="/api", tags=["profile"]) | |
| app.include_router(questionnaire.router, prefix="/api", tags=["questionnaire"]) | |
| app.include_router(language.router, prefix="/api", tags=["language"]) | |
| app.include_router(chat_session.router, prefix="/api", tags=["chat_session"]) | |
| app.include_router(agent_chat.router, prefix="/api", tags=["agent_chat"]) | |
| async def root(): | |
| return {"message": "API is running", "status": "healthy"} | |
| def backend_factory() -> requests.Session: | |
| session = requests.Session() | |
| session.verify = False | |
| return session | |
| configure_http_backend(backend_factory=backend_factory) |