mnemonic-fastapi/app/main.py (33 lines of code) (raw):

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()