from fastapi import FastAPI, Request from fastapi.templating import Jinja2Templates from fastapi.responses import HTMLResponse from starlette.middleware.sessions import SessionMiddleware import os # Routers from app.routes import auth, youtube # For rendering HTML templates templates = Jinja2Templates(directory="app/templates") app = FastAPI() # Set a secret key for session cookies (Use a strong key in production!) app.add_middleware(SessionMiddleware, secret_key="CHANGE_THIS_SECRET") # Include our routers app.include_router(auth.router) app.include_router(youtube.router) @app.get("/", response_class=HTMLResponse) async def read_root(request: Request): return templates.TemplateResponse("index.html", {"request": request}) @app.get("/success", response_class=HTMLResponse) async def read_success(request: Request): return templates.TemplateResponse("success.html", {"request": request})