Compare commits

...

2 commits

Author SHA1 Message Date
bff66406dd chore: ignore node deps 2025-02-18 00:10:15 +03:00
ea723ec645 chore: simple backend 2025-02-18 00:09:34 +03:00
3 changed files with 44 additions and 0 deletions

2
.gitignore vendored
View file

@ -1,6 +1,8 @@
.idea
.vscode
node_modules
__pycache__
.mypy_cache
.DS_Store

33
web-app/app.py Normal file
View file

@ -0,0 +1,33 @@
from fastapi.templating import Jinja2Templates
from fastapi.staticfiles import StaticFiles
from fastapi import FastAPI
import yaml
import uvicorn
from routes import home
app = FastAPI()
config = yaml.safe_load(open('./config.yaml'))
app.mount('/static/', StaticFiles(directory='./web/static/'))
app.mount('/node_modules', StaticFiles(directory='./web/node_modules/'))
app.include_router(home.router)
if __name__ == '__main__':
uvicorn.run(
app,
host=config['server']['host'],
port=5050,
ssl_keyfile=
config['server']['ssl_privkey']
if config['server']['ssl_work']
else None,
ssl_certfile=
config['server']['ssl_cert']
if config['server']['ssl_work']
else None
)

9
web-app/routes/home.py Normal file
View file

@ -0,0 +1,9 @@
from fastapi import APIRouter, Request
from starlette.responses import FileResponse, HTMLResponse
router = APIRouter()
@router.get('/', response_class=HTMLResponse)
async def home(req: Request):
return FileResponse('./web/html/index.html')