added more page content

This commit is contained in:
t.indorf
2026-05-11 16:06:33 +02:00
parent 70a50d89ab
commit 89cf1dfe84
6 changed files with 701 additions and 47 deletions
+12 -46
View File
@@ -3,19 +3,14 @@ import Link from "next/link";
import { redirect } from "next/navigation";
import {
ArrowRight,
CalendarDays,
CheckCircle2,
DatabaseZap,
Fingerprint,
LockKeyhole,
Mail,
Megaphone,
MessageSquareText,
ShieldAlert,
ShieldCheck,
Stethoscope,
Trash2,
UsersRound,
} from "lucide-react";
import { auth } from "@/auth";
@@ -28,6 +23,7 @@ import {
CardHeader,
CardTitle,
} from "@/components/ui/card";
import { marketingFeatures } from "@/lib/marketing/features";
import { ContactForm } from "./contact-form";
export const metadata: Metadata = {
@@ -61,46 +57,6 @@ export const metadata: Metadata = {
const heroImage =
"https://images.unsplash.com/photo-1503454537195-1dcabb73ffb9?auto=format&fit=crop&w=2400&q=86";
const features = [
{
icon: ShieldAlert,
title: "Fairer Notdienst-Planer",
description:
"Automatische Generierung, gerechte Verteilung und 1-Klick-Alarmierung, wenn morgens Ersatz gebraucht wird.",
accent: "bg-red-50 text-red-700 ring-red-100",
},
{
icon: CalendarDays,
title: "Smarter Kalender",
description:
"Feste, Termine, Raumbuchungen und digitale Mitbring-Listen in einem verbindlichen Kalender für alle Familien.",
accent: "bg-sky-50 text-sky-700 ring-sky-100",
},
{
icon: UsersRound,
title: "Sicheres Adressbuch",
description:
"Haushaltsbasiert, DSGVO-konform und mit strengem Opt-In: Kontaktdaten werden nur sichtbar, wenn Eltern zustimmen.",
accent: "bg-emerald-50 text-emerald-700 ring-emerald-100",
},
{
icon: Stethoscope,
title: "Digitale Krankmeldung",
description:
"Ein Klick statt Dauerläuten am Morgen. Eltern melden Kinder digital ab, ErzieherInnen sehen auf dem Tablet sofort den Überblick für den Morgenkreis.",
accent: "bg-amber-50 text-amber-700 ring-amber-100",
badge: "Neu",
},
{
icon: Megaphone,
title: "Schwarzes Brett",
description:
"Der WhatsApp-Killer für Vorstände: offizielle Ankündigungen mit Dateianhängen, Lesebestätigung und optionalem E-Mail-Push.",
accent: "bg-indigo-50 text-indigo-700 ring-indigo-100",
badge: "Neu",
},
];
const privacyPoints = [
{
icon: DatabaseZap,
@@ -246,7 +202,7 @@ export default async function LandingPage() {
</div>
<div className="grid gap-5 md:grid-cols-2 xl:grid-cols-6">
{features.map((feature, index) => {
{marketingFeatures.map((feature, index) => {
const Icon = feature.icon;
const isWide = index > 2;
return (
@@ -276,6 +232,16 @@ export default async function LandingPage() {
<CardDescription className="mt-3 text-sm leading-6 text-slate-600">
{feature.description}
</CardDescription>
<Button
asChild
variant="link"
className="mt-4 h-auto p-0 text-slate-950"
>
<Link href={`/features/${feature.slug}`}>
Mehr erfahren
<ArrowRight className="h-4 w-4" />
</Link>
</Button>
</div>
</CardHeader>
</Card>