Performance: Portrait-Bilder exakt für Anzeigegröße optimiert

- Portrait-Bilder in exakten Größen: 224px, 288px, 448px, 576px
- Mobile lädt jetzt ~5KB statt 30KB
- Supabase-Check auf 5s verzögert (außerhalb kritischer Pfad)
- Preload für exakte Portrait-Größen

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-01-05 22:14:52 +01:00
co-authored by Claude Opus 4.5
parent 4b9e457f4a
commit df053fb7a0
9 changed files with 9 additions and 13 deletions
+3 -6
View File
@@ -87,12 +87,9 @@ const Layout = ({ children }: LayoutProps) => {
}
};
// Verzögere Admin-Check bis nach dem Initial Paint
if ('requestIdleCallback' in window) {
requestIdleCallback(() => checkAdmin());
} else {
setTimeout(checkAdmin, 2000);
}
// Verzögere Admin-Check deutlich (5s) um kritischen Pfad nicht zu blockieren
const timeoutId = setTimeout(checkAdmin, 5000);
return () => clearTimeout(timeoutId);
}, []);
const navigationLinks = [
+4 -4
View File
@@ -63,24 +63,24 @@ const Hero = () => {
{/* Main Content */}
<div className="flex flex-col items-center justify-start min-h-screen px-4 pt-20 relative" style={{ zIndex: 30 }}>
{/* Profile Image - keine Animation beim Initial Load für bessere LCP */}
{/* Profile Image - optimiert für exakte Anzeigegröße */}
<div
className="w-56 h-56 sm:w-72 sm:h-72 mb-8 rounded-full overflow-hidden border-2 border-zinc-800"
style={{ transform: 'translateZ(0)' }}
>
<picture>
<source
srcSet="/portrait-300.webp 300w, /portrait-600.webp 600w"
srcSet="/portrait-224.webp 224w, /portrait-448.webp 448w, /portrait-288.webp 288w, /portrait-576.webp 576w"
sizes="(max-width: 640px) 224px, 288px"
type="image/webp"
/>
<source
srcSet="/portrait-300.jpg 300w, /portrait-600.jpg 600w"
srcSet="/portrait-224.jpg 224w, /portrait-288.jpg 288w"
sizes="(max-width: 640px) 224px, 288px"
type="image/jpeg"
/>
<img
src="/portrait-600.jpg"
src="/portrait-288.jpg"
alt={t('pages.home.hero.image.alt')}
className="w-full h-full object-cover"
loading="eager"