Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 | 1x 1x 1x 1x 1x 1x 1x 1x 1x 11x | import React, {lazy, Suspense} from 'react';
import {Route, Routes} from 'react-router-dom';
import './i18n/i18n';
import {Header} from './components/header/Header';
import {Footer} from './components/footer/Footer';
import {NotFound} from './components/notFound/NotFound';
import {CookieBanner} from './components/ui/cookieBanner/CookieBanner';
import {Loading} from "@/components/loading/Loading";
const Home = lazy(() => import('./pages/home/Home'));
const Experience = lazy(() => import('./pages/experience/Experience'));
const Projects = lazy(() => import('./pages/projects/Projects'));
const Courses = lazy(() => import('./pages/courses/Courses'));
const Certifications = lazy(() => import('./pages/certifications/Certifications'));
const Trading = lazy(() => import('./pages/trading/Trading'));
const Testimonials = lazy(() => import('./pages/testimonials/Testimonials'));
const Privacy = lazy(() => import('./pages/privacy/Privacy'));
const CookiePolicy = lazy(() => import('./pages/cookiePolicy/CookiePolicy'));
/**
* Modern App with React 19 + Vite 7 + Lazy Loading
*/
export default function App() {
return (
<div className="flex flex-col min-h-screen">
<Header/>
<main className="flex-grow overflow-auto">
<Suspense fallback={<Loading/>}>
<Routes>
<Route path="/" element={<Home/>}/>
<Route path="/experience" element={<Experience/>}/>
<Route path="/projects" element={<Projects/>}/>
<Route path="/courses" element={<Courses/>}/>
<Route path="/certifications" element={<Certifications/>}/>
<Route path="/trading" element={<Trading/>}/>
<Route path="/testimonials" element={<Testimonials/>}/>
<Route path="/privacy" element={<Privacy/>}/>
<Route path="/cookie-policy" element={<CookiePolicy/>}/>
<Route path="*" element={<NotFound/>}/>
</Routes>
</Suspense>
</main>
<Footer/>
<CookieBanner/>
</div>
);
}
|