Merge version_21_1782163474856 into main #23

Merged
bender merged 3 commits from version_21_1782163474856 into main 2026-06-22 21:28:05 +00:00
4 changed files with 37 additions and 0 deletions

View File

@@ -3,12 +3,14 @@ import Layout from './components/Layout';
import HomePage from './pages/HomePage';
import VorOrtServicePage from "@/pages/VorOrtServicePage";
import AboutPage from "@/pages/AboutPage";
export default function App() {
return (
<Routes>
<Route element={<Layout />}>
<Route path="/" element={<HomePage />} />
<Route path="/vor-ort-service" element={<VorOrtServicePage />} />
<Route path="/about" element={<AboutPage />} />
</Route>
</Routes>
);

View File

@@ -105,6 +105,8 @@ export default function Layout() {
"href": "#testimonials"
},
{ name: "Vor Ort Service", href: "/vor-ort-service" },
{ name: "About", href: "/about" },
];

32
src/pages/AboutPage.tsx Normal file
View File

@@ -0,0 +1,32 @@
import Button from "@/components/ui/Button";
import TextAnimation from "@/components/ui/TextAnimation";
import ImageOrVideo from "@/components/ui/ImageOrVideo";
import ScrollReveal from "@/components/ui/ScrollReveal";
import FeaturesIconCards from "@/components/sections/features/FeaturesIconCards";
export default function AboutPage() {
return (
<>
<div data-webild-section="AboutText"><section aria-label="About section" className=""><div className="w-content-width mx-auto flex flex-col gap-2 items-center"><TextAnimation text="Über RojTec" variant="fade" gradientText={false} tag="h2" className="text-6xl 2xl:text-7xl leading-[1.15] font-semibold text-center text-balance" /><div className="flex flex-wrap gap-3 justify-center mt-2 md:mt-3"><Button text="Angebot anfordern" href="/kontakt" variant="primary" /><Button text="Mehr erfahren" href="#features" variant="secondary" animationDelay={0.1} /></div></div></section></div>
<div data-webild-section="FeaturesDetailedCards"><section aria-label="Features section" className=""><div className="flex flex-col gap-8"><div className="flex flex-col items-center w-content-width mx-auto gap-2"><div className="px-3 py-1 mb-1 text-sm card rounded w-fit"><p>Über uns</p></div><TextAnimation text="Über RojTec" variant="fade-blur" gradientText={true} tag="h2" className="md:max-w-8/10 text-6xl 2xl:text-7xl leading-[1.15] font-semibold text-center text-balance" /><TextAnimation text="Ihr zuverlässiger Partner für Handyreparatur in Wolfsburg, Braunschweig und Umgebung. Schnell, ehrlich und fachgerecht." variant="fade-blur" gradientText={false} tag="p" className="md:max-w-7/10 text-lg md:text-xl leading-snug text-center text-balance" /><div className="flex flex-wrap justify-center gap-3 mt-2 md:mt-3"><Button text="Angebot anfordern" href="#angebot" variant="primary" /><Button text="Mehr erfahren" href="#features" variant="secondary" animationDelay={0.1} /></div></div><div className="flex flex-col w-content-width mx-auto gap-5"><ScrollReveal variant="fade-blur" key="Vor-Ort-Service" className="flex flex-col md:grid md:grid-cols-2 mx-auto gap-6 p-6 card rounded group"><div className="flex flex-col justify-between gap-2"><h3 className="text-4xl md:text-5xl font-semibold leading-[1.15] text-balance">Vor-Ort-Service</h3><div className="flex flex-col-reverse md:flex-col gap-3"><div className="flex flex-wrap gap-3"><div key="Flexibel" className="px-3 py-1 text-sm card rounded w-fit"><p>Flexibel</p></div>
<div key="Bequem" className="px-3 py-1 text-sm card rounded w-fit"><p>Bequem</p></div>
<div key="Schnell" className="px-3 py-1 text-sm card rounded w-fit"><p>Schnell</p></div></div><p className="text-lg md:text-xl leading-snug text-balance">Wir kommen direkt zu Ihnen nach Hause oder ins Unternehmen und reparieren Ihr Gerät vor Ort.</p></div></div><div className="aspect-square md:aspect-5/4 rounded overflow-hidden"><ImageOrVideo imageSrc="https://img.freepik.com/free-photo/technician-repairing-mobile-phone_1098-14152.jpg" className="transition-transform duration-500 ease-in-out group-hover:scale-105" /></div></ScrollReveal>
<ScrollReveal variant="fade-blur" key="Einsende-Service" className="flex flex-col md:grid md:grid-cols-2 mx-auto gap-6 p-6 card rounded group"><div className="flex flex-col justify-between gap-2"><h3 className="text-4xl md:text-5xl font-semibold leading-[1.15] text-balance">Einsende-Service</h3><div className="flex flex-col-reverse md:flex-col gap-3"><div className="flex flex-wrap gap-3"><div key="Deutschlandweit" className="px-3 py-1 text-sm card rounded w-fit"><p>Deutschlandweit</p></div>
<div key="Einfach" className="px-3 py-1 text-sm card rounded w-fit"><p>Einfach</p></div>
<div key="Sicher" className="px-3 py-1 text-sm card rounded w-fit"><p>Sicher</p></div></div><p className="text-lg md:text-xl leading-snug text-balance">Sie senden uns Ihr Gerät bequem zu wir reparieren es und schicken es schnell wieder zurück.</p></div></div><div className="aspect-square md:aspect-5/4 rounded overflow-hidden"><ImageOrVideo imageSrc="https://img.freepik.com/free-photo/delivery-man-holding-cardboard-boxes_1150-13753.jpg" className="transition-transform duration-500 ease-in-out group-hover:scale-105" /></div></ScrollReveal>
<ScrollReveal variant="fade-blur" key="Alle Marken & Modelle" className="flex flex-col md:grid md:grid-cols-2 mx-auto gap-6 p-6 card rounded group"><div className="flex flex-col justify-between gap-2"><h3 className="text-4xl md:text-5xl font-semibold leading-[1.15] text-balance">Alle Marken & Modelle</h3><div className="flex flex-col-reverse md:flex-col gap-3"><div className="flex flex-wrap gap-3"><div key="Apple" className="px-3 py-1 text-sm card rounded w-fit"><p>Apple</p></div>
<div key="Samsung" className="px-3 py-1 text-sm card rounded w-fit"><p>Samsung</p></div>
<div key="Weitere" className="px-3 py-1 text-sm card rounded w-fit"><p>Weitere</p></div></div><p className="text-lg md:text-xl leading-snug text-balance">Von Displaybruch bis Akkutausch. Wir reparieren alle gängigen Smartphone-Marken und -Modelle.</p></div></div><div className="aspect-square md:aspect-5/4 rounded overflow-hidden"><ImageOrVideo imageSrc="https://img.freepik.com/free-photo/close-up-man-repairing-smartphone_23-2148336714.jpg" className="transition-transform duration-500 ease-in-out group-hover:scale-105" /></div></ScrollReveal>
<ScrollReveal variant="fade-blur" key="Faire Preise" className="flex flex-col md:grid md:grid-cols-2 mx-auto gap-6 p-6 card rounded group"><div className="flex flex-col justify-between gap-2"><h3 className="text-4xl md:text-5xl font-semibold leading-[1.15] text-balance">Faire Preise</h3><div className="flex flex-col-reverse md:flex-col gap-3"><div className="flex flex-wrap gap-3"><div key="Fair" className="px-3 py-1 text-sm card rounded w-fit"><p>Fair</p></div>
<div key="Transparent" className="px-3 py-1 text-sm card rounded w-fit"><p>Transparent</p></div>
<div key="Persönlich" className="px-3 py-1 text-sm card rounded w-fit"><p>Persönlich</p></div></div><p className="text-lg md:text-xl leading-snug text-balance">Sie wissen vorher, woran Sie sind. Keine versteckten Kosten, ehrliche Beratung vom Fachmann.</p></div></div><div className="aspect-square md:aspect-5/4 rounded overflow-hidden"><ImageOrVideo imageSrc="https://img.freepik.com/free-photo/calculator-money-notepad-desk_1150-14925.jpg" className="transition-transform duration-500 ease-in-out group-hover:scale-105" /></div></ScrollReveal></div></div></section></div>
<div data-webild-section="FeaturesIconCards"><FeaturesIconCards
tag="Warum RojTec?"title="Warum Sie uns vertrauen können"
description="Ihr Gerät ist bei uns in guten Händen. Wir arbeiten sorgfältig, transparent und schnell damit Sie Ihr Smartphone bald wieder nutzen können."
primaryButton={{"text":"Angebot anfordern","href":"#angebot"}}
features={[{"icon":"Smartphone","title":"Alle Marken & Modelle","description":"Von Displaybruch bis Akkutausch reparieren wir jedes Gerät fachgerecht."},{"icon":"Truck","title":"Maximale Flexibilität","description":"Wählen Sie zwischen unserem bequemen Vor-Ort-Service oder der Einsendung."},{"icon":"Banknote","title":"Transparente Preise","description":"Keine versteckten Kosten. Sie wissen immer vorher, woran Sie sind."},{"icon":"UserCheck","title":"Persönlich & zuverlässig","description":"Bei uns sprechen Sie direkt mit dem Fachmann für Ihr Anliegen."}]}
/></div>
<div data-webild-section="ContactCta"><section aria-label="Contact section" className=""><div className="w-content-width mx-auto"><ScrollReveal variant="fade-blur"><div className="flex flex-col items-center gap-8 px-8 rounded card"><div className="flex flex-col items-center gap-2"><div className="px-3 py-1 mb-1 text-sm card rounded w-fit"><p>Handy defekt?</p></div><TextAnimation text="Fordern Sie jetzt unverbindlich Ihr Angebot an. Wir reparieren Ihr Smartphone schnell, transparent und zuverlässig." variant="fade" gradientText={true} tag="h2" className="md:max-w-8/10 text-5xl 2xl:text-6xl leading-[1.15] font-semibold text-center text-balance" /><div className="flex flex-wrap justify-center gap-3 mt-2 md:mt-3"><Button text="Angebot anfordern" href="/kontakt" variant="primary" /><Button text="Preise ansehen" href="/preise" variant="secondary" animationDelay={0.1} /></div></div></div></ScrollReveal></div></section></div>
</>
);
}

View File

@@ -7,4 +7,5 @@ export interface Route {
export const routes: Route[] = [
{ path: '/', label: 'Home', pageFile: 'HomePage' },
{ path: '/vor-ort-service', label: 'Vor Ort Service', pageFile: 'VorOrtServicePage' },
{ path: '/about', label: 'About', pageFile: 'AboutPage' },
];