TDD: 1, Me: 0

This commit is contained in:
2024-12-13 18:08:44 +02:00
commit 9c1cfa7c23
36 changed files with 2374 additions and 0 deletions

33
app/ui/ui.py Normal file
View File

@@ -0,0 +1,33 @@
from flask import Flask, render_template, request, send_from_directory
import httpx
import asyncio
from dotenv import load_dotenv
from . import ui_bp
import os
load_dotenv() # Load environment variables from .env file
def get_devices():
devices = []
for key in os.environ:
if key.endswith('_MAC'):
device_name = key[:-4].lower() # Get device name
devices.append(device_name)
return devices
def setup_ui(limiter, app):
# Serve static files and exempt from rate limiting
@app.route('/ui/static/<path:filename>')
@limiter.exempt
def serve_static(filename):
static_dir = os.path.join(app.root_path, 'ui', 'static')
return send_from_directory(static_dir, filename)
@ui_bp.route('/')
@limiter.exempt
def home():
devices = get_devices()
return render_template('home.html', devices=devices)
app.register_blueprint(ui_bp)