added favicon

This commit is contained in:
oberon 2026-02-19 16:14:31 +01:00
parent 6d58a652db
commit f7654fa8ea
12 changed files with 78 additions and 17 deletions

BIN
.DS_Store vendored

Binary file not shown.

View File

@ -24,3 +24,8 @@ class Config:
# Optional: absolute Pfade, falls du später Docker o.ä. nutzt # Optional: absolute Pfade, falls du später Docker o.ä. nutzt
# CONFIG_DIR = os.path.join(os.path.dirname(__file__), 'configs') # CONFIG_DIR = os.path.join(os.path.dirname(__file__), 'configs')
APP_NAME = "MK Sound & Control"
APP_NAME_SHORT = "MKSC" # für Tab-Titel, wenns kurz sein soll
APP_VERSION = "0.9.β"
APP_DESCRIPTION = "Websteuerung für MouldKing MK4/MK6-Hubs mit Soundboard"

Binary file not shown.

After

Width:  |  Height:  |  Size: 100 KiB

BIN
other/favicon.zip Normal file

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

BIN
static/favicon/favicon.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 1.5 MiB

View File

@ -0,0 +1,21 @@
{
"name": "MK Sound & Control",
"short_name": "MKSC",
"icons": [
{
"src": "/web-app-manifest-192x192.png",
"sizes": "192x192",
"type": "image/png",
"purpose": "maskable"
},
{
"src": "/web-app-manifest-512x512.png",
"sizes": "512x512",
"type": "image/png",
"purpose": "maskable"
}
],
"theme_color": "#950000",
"background_color": "#8a0000",
"display": "standalone"
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 188 KiB

View File

@ -3,22 +3,31 @@
<head> <head>
<meta charset="utf-8"> <meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="viewport" content="width=device-width, initial-scale=1">
<title>{% block title %}Mould King Control{% endblock %}</title> <meta name="description" content="{{ config.APP_DESCRIPTION|default('MouldKing Modelle steuern & Sounds abspielen') }}">
<title>{{ config.APP_NAME }} {{ title|default('Steuerung') }}</title>
<!-- Bootstrap 5.3 CSS CDN --> <link rel="icon" href="{{ url_for('static', filename='favicon/favicon.ico') }}" sizes="any">
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" <link rel="icon" href="{{ url_for('static', filename='favicon/icon.svg') }}" type="image/svg+xml">
rel="stylesheet" <link rel="apple-touch-icon" sizes="180x180" href="{{ url_for('static', filename='favicon/apple-touch-icon.png') }}">
integrity="sha384-QWTKZyjpPEjISv5WaRU9OFeRpok6YctnYmDr5pNlyT2bRjXh0JMhjY6hW+ALEwIH" <link rel="icon" type="image/png" sizes="32x32" href="{{ url_for('static', filename='favicon/favicon-32x32.png') }}">
crossorigin="anonymous"> <link rel="icon" type="image/png" sizes="16x16" href="{{ url_for('static', filename='favicon/favicon-16x16.png') }}">
<link rel="manifest" href="{{ url_for('static', filename='favicon/site.webmanifest') }}">
<meta name="theme-color" content="#950000">
<!-- highlight.js für Syntax-Highlighting in Logs --> <!-- Bootstrap 5.3 CSS CDN -->
<link rel="stylesheet" href="{{ url_for('static', filename='css/default.min.css') }}"> <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css"
<script src="{{ url_for('static', filename='js/highlight.min.js') }}"></script> rel="stylesheet"
<script src="{{ url_for('static', filename='js/hljs-log.js') }}"></script> integrity="sha384-QWTKZyjpPEjISv5WaRU9OFeRpok6YctnYmDr5pNlyT2bRjXh0JMhjY6hW+ALEwIH"
<script>hljs.highlightAll();</script> crossorigin="anonymous">
<!-- Eigenes CSS (optional später erweitern) --> <!-- highlight.js für Syntax-Highlighting in Logs -->
<link rel="stylesheet" href="{{ url_for('static', filename='css/custom.css') }}"> <link rel="stylesheet" href="{{ url_for('static', filename='css/default.min.css') }}">
<script src="{{ url_for('static', filename='js/highlight.min.js') }}"></script>
<script src="{{ url_for('static', filename='js/hljs-log.js') }}"></script>
<script>hljs.highlightAll();</script>
<!-- Eigenes CSS (optional später erweitern) -->
<link rel="stylesheet" href="{{ url_for('static', filename='css/custom.css') }}">
{% block head_extra %}{% endblock %} {% block head_extra %}{% endblock %}
</head> </head>
@ -39,24 +48,33 @@
<a class="nav-link {% if request.path == url_for('main.index') %}active{% endif %}" <a class="nav-link {% if request.path == url_for('main.index') %}active{% endif %}"
href="{{ url_for('main.index') }}">Home</a> href="{{ url_for('main.index') }}">Home</a>
</li> </li>
<!--
<li class="nav-item"> <li class="nav-item">
<a class="nav-link {% if 'control' in request.path %}active{% endif %}" <a class="nav-link {% if 'control' in request.path %}active{% endif %}"
href="{{ url_for('main.index') }}">Steuerung</a> href="{{ url_for('main.index') }}">Steuerung</a>
</li> </li>
-->
<li class="nav-item">
<a class="nav-link {% if 'soundboard' in request.path %}active{% endif %}"
href="{{ url_for('main.soundboard') }}">Soundboard</a>
</li>
<li class="nav-item"> <li class="nav-item">
<a class="nav-link {% if 'admin' in request.path %}active{% endif %}" <a class="nav-link {% if 'admin' in request.path %}active{% endif %}"
href="{{ url_for('admin.admin') }}">Admin</a> href="{{ url_for('admin.admin') }}">Admin</a>
</li> </li>
<li class="nav-item">
<a class="nav-link {% if 'soundboard' in request.path %}active{% endif %}"
href="{{ url_for('main.soundboard') }}">Soundboard</a>
</li>
</ul> </ul>
</div> </div>
</div> </div>
</nav> </nav>
<!-- Hauptinhalt --> <!-- Hauptinhalt -->
<header>
<h1>{{ config.APP_NAME }}</h1>
<!-- oder als Logo + Slogan -->
</header>
<main class="flex-grow-1 py-4"> <main class="flex-grow-1 py-4">
<div class="container"> <div class="container">
{% with messages = get_flashed_messages(with_categories=true) %} {% with messages = get_flashed_messages(with_categories=true) %}