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 | |
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"]) | |
async def root(): | |
return {"message": "API is running", "status": "healthy"} |