-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathapi.py
More file actions
40 lines (32 loc) · 1.24 KB
/
api.py
File metadata and controls
40 lines (32 loc) · 1.24 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
import os
from fastapi import FastAPI, Request
from fastapi.responses import HTMLResponse
from fastapi.staticfiles import StaticFiles
from fastapi.responses import FileResponse
from fastapi.templating import Jinja2Templates
from core.config import Config
from router.map_gen import mapGen
config = Config()
app = FastAPI(title="Luminara API",
version=config.version,
description="A RESTful API for Luminara.",
docs_url="/docs",
redoc_url=None
)
app.mount("/static", StaticFiles(directory="static",html=True), name="static")
@app.get("/favicon.ico", include_in_schema=False)
async def favicon():
return FileResponse("static/favicon.ico",status_code=200)
@app.get("/",include_in_schema=False)
async def index():
return HTMLResponse(content=open("static/index.html", encoding="UTF-8").read(), status_code=200)
@app.get("/music",include_in_schema=False)
async def index():
return HTMLResponse(content=open("static/music.html", encoding="UTF-8").read(), status_code=200)
@app.get("/status")
async def status():
return {"version": config.version, "buildid": config.buildid}
app.include_router(mapGen)
if __name__ == "__main__":
import uvicorn
uvicorn.run(app,host="0.0.0.0",port=443)