mirror of
https://github.com/Since-3/since3-portal.git
synced 2026-10-12 19:51:17 +00:00
121 lines
6.9 KiB
TypeScript
121 lines
6.9 KiB
TypeScript
import { defineTemplate, describeSections, unsplash } from "../../lib/content"
|
||
|
||
const defaults = {
|
||
brand: { name: "PULSE", suffix: "Training Club", phone: "030 123 456 78", address: "Torstraße 140, 10119 Berlin" },
|
||
hero: {
|
||
eyebrow: "Training Club · Berlin Mitte",
|
||
title: "Stärker\nals *gestern.*",
|
||
text: "Functional Training, Kraft und Yoga in kleinen Gruppen – mit Coaches, die dich wirklich sehen.",
|
||
cta: "Probetraining sichern",
|
||
ctaSecondary: "Kursplan ansehen",
|
||
image: unsplash("1605296867304-46d5465a13f1"),
|
||
},
|
||
stats: {
|
||
items: [
|
||
{ value: "40", suffix: "+", label: "Kurse pro Woche" },
|
||
{ value: "12", suffix: "", label: "Coaches" },
|
||
{ value: "1.800", suffix: "", label: "Mitglieder" },
|
||
{ value: "24", suffix: "/7", label: "Zugang" },
|
||
],
|
||
},
|
||
marquee: { items: [{ text: "HIIT" }, { text: "Kraft" }, { text: "Mobility" }, { text: "Yoga" }, { text: "Boxen" }, { text: "Cycling" }] },
|
||
programs: {
|
||
eyebrow: "Training",
|
||
title: "Vier Wege zu *mehr* Energie.",
|
||
items: [
|
||
{ title: "Kraft", text: "Langhantel, Kettlebell und saubere Technik – Schritt für Schritt stärker.", image: unsplash("1517963879433-6ad2b056d712", 1400) },
|
||
{ title: "Functional", text: "Ganzkörper-Workouts, die dich für den Alltag fit machen.", image: unsplash("1599058917212-d750089bc07e", 1400) },
|
||
{ title: "Yoga & Mobility", text: "Beweglichkeit, Atmung und Ruhe für Körper und Kopf.", image: unsplash("1544367567-0f2fcb009e0b", 1400) },
|
||
{ title: "Boxen", text: "Technik, Ausdauer und Kopf frei – ganz ohne Sparring-Zwang.", image: unsplash("1549060279-7e168fcee0c2", 1400) },
|
||
],
|
||
},
|
||
classes: {
|
||
eyebrow: "Kursplan",
|
||
title: "Finde deinen *Flow.*",
|
||
items: [
|
||
{ day: "Mo", time: "07:00", name: "Morning HIIT", trainer: "Lena", level: "3" },
|
||
{ day: "Mo", time: "12:15", name: "Lunch Mobility", trainer: "Aylin", level: "1" },
|
||
{ day: "Mo", time: "18:30", name: "Strength Basics", trainer: "Marco", level: "2" },
|
||
{ day: "Di", time: "07:00", name: "Functional Flow", trainer: "Lena", level: "2" },
|
||
{ day: "Di", time: "19:00", name: "Box Fit", trainer: "Jonas", level: "3" },
|
||
{ day: "Mi", time: "06:45", name: "Sunrise Yoga", trainer: "Aylin", level: "1" },
|
||
{ day: "Mi", time: "18:00", name: "Heavy Lifting", trainer: "Marco", level: "3" },
|
||
{ day: "Do", time: "12:15", name: "Core & Back", trainer: "Lena", level: "2" },
|
||
{ day: "Do", time: "19:30", name: "Box Technik", trainer: "Jonas", level: "2" },
|
||
{ day: "Fr", time: "07:00", name: "Morning HIIT", trainer: "Lena", level: "3" },
|
||
{ day: "Fr", time: "17:30", name: "Friday Burn", trainer: "Marco", level: "3" },
|
||
{ day: "Sa", time: "10:00", name: "Team Workout", trainer: "Alle", level: "2" },
|
||
{ day: "So", time: "11:00", name: "Slow Flow Yoga", trainer: "Aylin", level: "1" },
|
||
],
|
||
},
|
||
transformation: {
|
||
eyebrow: "Ergebnisse",
|
||
title: "Zwölf Wochen.\n*Echte* Veränderung.",
|
||
text: "Mit festen Trainingszeiten, einem Plan, der zu dir passt, und Coaches, die dranbleiben, wenn du es mal nicht tust.",
|
||
image: unsplash("1574680096145-d05b474e2155", 1800),
|
||
before: "Woche 1",
|
||
after: "Woche 12",
|
||
quote: "Ich hätte nie gedacht, dass ich mich auf Montagmorgen freue. Minus acht Kilo, plus ganz viel Energie.",
|
||
author: "Mara, 34, Mitglied seit 2025",
|
||
},
|
||
pricing: {
|
||
eyebrow: "Mitgliedschaft",
|
||
title: "Kein Vertrag, der *bremst.*",
|
||
plans: [
|
||
{ name: "Flex", price: "59", period: "pro Monat", features: "Alle Kurse\nMonatlich kündbar\nBuchung per App", highlight: "" },
|
||
{ name: "Club", price: "79", period: "pro Monat", features: "Alle Kurse & Open Gym\n24/7 Zugang\nSauna & Recovery\n1 Personal Training im Quartal", highlight: "ja" },
|
||
{ name: "10er-Karte", price: "190", period: "einmalig", features: "10 Kurse nach Wahl\n6 Monate gültig\nIdeal zum Reinschnuppern", highlight: "" },
|
||
],
|
||
},
|
||
coaches: {
|
||
eyebrow: "Coaches",
|
||
title: "Dein *Team.*",
|
||
members: [
|
||
{ name: "Lena Kraus", role: "HIIT & Functional", image: unsplash("1546483875-ad9014c88eba", 900) },
|
||
{ name: "Marco Silva", role: "Kraft & Athletik", image: unsplash("1581009146145-b5ef050c2e1e", 900) },
|
||
{ name: "Aylin Demir", role: "Yoga & Mobility", image: unsplash("1552196563-55cd4e45efb3", 900) },
|
||
{ name: "Jonas Weber", role: "Boxen & Kondition", image: unsplash("1583454110551-21f2fa2afe61", 900) },
|
||
],
|
||
},
|
||
trial: {
|
||
title: "Dein erstes Training ist *gratis.*",
|
||
text: "Komm vorbei, lern das Team kennen und trainiere eine Stunde mit – ohne Verpflichtung.",
|
||
cta: "Probetraining sichern",
|
||
},
|
||
}
|
||
|
||
export const fitness = defineTemplate({
|
||
key: "fitness",
|
||
name: "Pulse",
|
||
industry: "Fitness, Sport & Yoga",
|
||
description: "Energiegeladen und dunkel: kinetische Typografie, aufklappende Trainingsbereiche, Kursplan nach Wochentagen, Vorher/Nachher-Regler und Mitgliedschaften.",
|
||
cover: unsplash("1517836357463-d25dfeac3438", 1200),
|
||
samples: {
|
||
inquiry: "Hey, ich bin 31 und möchte nach längerer Pause wieder anfangen – vor allem wegen Rückenschmerzen. Was empfehlt ihr mir, und was kostet eine Mitgliedschaft mit Personal Training? Gruß, Felix",
|
||
topic: "Neuer Kurs: Mobility & Rücken ab Montag",
|
||
},
|
||
palettes: [
|
||
{ key: "volt", label: "Volt", dark: true, bg: "#0a0a0a", fg: "#f4f4ef", muted: "#8f8f88", surface: "#161616", accent: "#c6ff3d" },
|
||
{ key: "ember", label: "Ember", dark: true, bg: "#0d0a09", fg: "#f7f1ec", muted: "#9a8f88", surface: "#1a1412", accent: "#ff5a1f" },
|
||
{ key: "kreide", label: "Kreide", bg: "#f1f1ee", fg: "#0c0c0c", muted: "#62625d", surface: "#e2e2dd", accent: "#3d5afe" },
|
||
],
|
||
fonts: [
|
||
{ key: "power", label: "Unbounded & Space Grotesk" },
|
||
{ key: "athletic", label: "Anton & Work Sans" },
|
||
],
|
||
sections: describeSections(defaults, {
|
||
brand: "Studio & Kontakt",
|
||
hero: "Startbereich",
|
||
stats: { label: "Zahlen", optional: true, items: { items: "Kennzahl" } },
|
||
marquee: { label: "Laufband", optional: true, items: { items: "Begriff" } },
|
||
programs: { label: "Trainingsbereiche", optional: true, items: { items: "Bereich" } },
|
||
classes: { label: "Kursplan", optional: true, items: { items: "Kurs" } },
|
||
transformation: { label: "Vorher/Nachher", optional: true },
|
||
pricing: { label: "Mitgliedschaften", optional: true, items: { plans: "Tarif" } },
|
||
coaches: { label: "Coaches", optional: true, items: { members: "Coach" } },
|
||
trial: "Probetraining",
|
||
}),
|
||
defaults,
|
||
})
|
||
|
||
export type FitnessData = typeof fitness.defaults
|