from fastapi import FastAPI from fastapi.responses import HTMLResponse from fastapi.staticfiles import StaticFiles from fastapi.templating import Jinja2Templates from fastapi import Request import uvicorn app = FastAPI() # Mount static files app.mount("/static", StaticFiles(directory="static"), name="static") templates = Jinja2Templates(directory="templates") # Frontend route from fastapi.responses import FileResponse import os @app.get("/") async def home(): return FileResponse(os.path.join("templates", "index.html")) # Your moderation endpoint (example) @app.post("/moderate") async def moderate(data: dict): text = data.get("text", "") # 🔥 Replace with your real model logic return { "decision": "flag", "confidence": 0.85, "explanation": "Potentially harmful content detected", "ai_scores": { "toxicity": 0.8, "insult": 0.6, "threat": 0.7, "obscene": 0.5 } } # Run locally if __name__ == "__main__": uvicorn.run(app, host="0.0.0.0", port=7860)