""" Entry for startup fastapi server """ from fastapi import FastAPI from fastapi.staticfiles import StaticFiles from fastapi.middleware.cors import CORSMiddleware import uvicorn from fooocusapi.utils import file_utils from fooocusapi.routes.generate_v1 import secure_router as generate_v1 from fooocusapi.routes.generate_v2 import secure_router as generate_v2 from fooocusapi.routes.query import secure_router as query from mannequin_to_model import secure_router as mannequin_to_model app = FastAPI() app.add_middleware( CORSMiddleware, allow_origins=["*"], # Allow access from all sources allow_credentials=True, allow_methods=["*"], # Allow all HTTP methods allow_headers=["*"], # Allow all request headers ) app.mount("/files", StaticFiles(directory=file_utils.output_dir), name="files") app.include_router(query) app.include_router(generate_v1) app.include_router(generate_v2) app.include_router(mannequin_to_model) def start_app(args): """Start the FastAPI application""" file_utils.STATIC_SERVER_BASE = args.base_url + "/files/" uvicorn.run( app="fooocusapi.api:app", host="0.0.0.0", port=8000, log_level=args.log_level)