| from urllib import response |
| from fastapi import FastAPI, Request |
| from fastapi.responses import HTMLResponse |
| from fastapi.staticfiles import StaticFiles |
| from fastapi.templating import Jinja2Templates |
| |
| from .library.helpers import * |
| |
| app = FastAPI() |
| |
| templates = Jinja2Templates(directory="templates") |
| app.mount("/static", StaticFiles(directory="static"), name="static") |
| |
| @app.get("/", response_class=HTMLResponse) |
| async def home(request: Request): |
| data = openfile("home.md") |
| return templates.TemplateResponse("page.html", {"request": request, "data": data}) |
| |
| @app.get("/page/{page_name}", response_class=HTMLResponse) |
| async def page(request: Request, page_name: str): |
| data = openfile(page_name + ".md") |
| return templates.TemplateResponse("page.html", {"request": request, "data": data}) |
| |
| @app.get("/docs", response_class=HTMLResponse) |
| async def mnemonic_docs(request: Request): |
| data = { |
| "page": "docs" |
| } |
| return templates.TemplateResponse("page.html", {"request": request, "data": data}) |
| |
| if __name__ == "__main__": |
| from uvicorn import Config, Server |
| server = Server( |
| Config( |
| app, |
| host="0.0.0.0", |
| port=443, |
| ) |
| ) |
| server.run() |