From 13984acb3c57060e57d7f34eb05ecf16e24e61dd Mon Sep 17 00:00:00 2001 From: Stephan-Thomas Date: Sun, 26 Apr 2026 00:57:22 +0100 Subject: [PATCH] fix(#193): reduce layout nesting and lazy load providers for faster initial render --- src/app/layout.tsx | 53 +++--------------- src/providers/RootProviders.tsx | 95 +++++++++++++++++++++++++++++++++ 2 files changed, 103 insertions(+), 45 deletions(-) create mode 100644 src/providers/RootProviders.tsx diff --git a/src/app/layout.tsx b/src/app/layout.tsx index 35c56dc4..cdf77b91 100644 --- a/src/app/layout.tsx +++ b/src/app/layout.tsx @@ -2,26 +2,9 @@ import type { Metadata } from 'next'; import { cookies } from 'next/headers'; import { Geist, Geist_Mono } from 'next/font/google'; import './globals.css'; -import { Suspense } from 'react'; -import { ThemeProvider } from '@/lib/theme-provider'; -import DynamicTheming from '@/components/theme/DynamicTheming'; -import { OfflineModeProvider } from './context/OfflineModeContext'; -import { I18nProvider } from '@/hooks/useInternationalization'; -import { InternationalizationEngine } from '@/components/i18n/InternationalizationEngine'; -import { CulturalAdaptationManager } from '@/components/i18n/CulturalAdaptationManager'; -import PerformanceMonitor from '@/components/performance/PerformanceMonitor'; -import { PerformanceMonitoringProvider } from '@/hooks/usePerformanceMonitoring'; -import PrefetchingEngine from '@/components/performance/PrefetchingEngine'; -import StateManagerIntegration from '@/components/state/StateManagerIntegration'; -import { PWAManager } from '@/components/pwa/PWAManager'; -import { AccessibilityProvider } from '@/components/accessibility/AccessibilityProvider'; -import { ErrorBoundary } from '@/components/errors/ErrorBoundarySystem'; -import { EnvGuard } from '@/components/shared/EnvGuard'; -import { Loading } from '@/components/ui/Loading'; -import { ToastProvider } from '@/context/ToastContext'; +import { RootProviders } from '@/providers/RootProviders'; const geistSans = Geist({ - // ... variable: '--font-geist-sans', subsets: ['latin'], }); @@ -69,34 +52,14 @@ export default async function RootLayout({