Aasher's picture
Feat: Build a student homework assistant API
a9af6e5
raw
history blame contribute delete
971 Bytes
from fastapi import FastAPI, HTTPException
from fastapi.staticfiles import StaticFiles
from fastapi.responses import FileResponse
from fastapi.middleware.cors import CORSMiddleware
from dotenv import load_dotenv
from api.chat import chat_router
load_dotenv()
app = FastAPI(
title="Chat Assistant API",
description="FastAPI backend for chat assistant with LiteLLM and Gemini",
version="1.0.0"
)
# CORS middleware for frontend integration
app.add_middleware(
CORSMiddleware,
allow_origins=["*"], # Configure this properly for production
allow_credentials=True,
allow_methods=["*"],
allow_headers=["*"],
)
# Include routers
app.include_router(chat_router, prefix="/api")
# Mount static files for the frontend
app.mount("/static", StaticFiles(directory="static"), name="static")
@app.get("/")
async def root():
return FileResponse("static/index.html")
@app.get("/health")
async def health_check():
return {"status": "healthy"}