from fastapi import FastAPI, Request, Form from fastapi.responses import HTMLResponse, JSONResponse from fastapi.templating import Jinja2Templates from fastapi.staticfiles import StaticFiles from functools import partial import json, download, asyncio from typing import Optional app = FastAPI() app.mount("/data", StaticFiles(directory="/data"), name="data") templates = Jinja2Templates(directory="templates") loop = asyncio.get_running_loop() # JSON cache cached_data = None def shows(): html = '' global cached_data accepted_D20 = ('Dimension 20', 'Dimension 20 Animated', "Dimension 20's Adventuring Party") for item in cached_data: if 'Dimension 20' in item['SHOW']: if item['SHOW'] in accepted_D20: name = item['SHOW'] html += f'' else: name = item['SHOW'] html += f'