feat: PWA setup + /app base path

- Landing page at /
- Vue app at /app (PWA installable)
- Added manifest.json for mobile install
- iOS + Android meta tags
- Updated router base path
This commit is contained in:
2026-03-12 20:50:00 +00:00
parent 83fd53a1ea
commit 21c88be74f
25 changed files with 122 additions and 25 deletions

10
public/favicon.svg Normal file
View File

@@ -0,0 +1,10 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100">
<defs>
<linearGradient id="grad" x1="0%" y1="0%" x2="100%" y2="100%">
<stop offset="0%" style="stop-color:#667eea"/>
<stop offset="100%" style="stop-color:#764ba2"/>
</linearGradient>
</defs>
<rect width="100" height="100" rx="20" fill="url(#grad)"/>
<text x="50" y="68" font-size="50" text-anchor="middle" fill="white">🔐</text>
</svg>

After

Width:  |  Height:  |  Size: 430 B

25
public/manifest.json Normal file
View File

@@ -0,0 +1,25 @@
{
"name": "SeCu - Mitarbeiterverwaltung",
"short_name": "SeCu",
"description": "Deine Aufträge, Stundenzettel und Dienstpläne",
"start_url": "/app/",
"scope": "/app/",
"display": "standalone",
"background_color": "#667eea",
"theme_color": "#667eea",
"orientation": "portrait-primary",
"icons": [
{
"src": "/app/icon-192.png",
"sizes": "192x192",
"type": "image/png",
"purpose": "any maskable"
},
{
"src": "/app/icon-512.png",
"sizes": "512x512",
"type": "image/png",
"purpose": "any maskable"
}
]
}