Files
entscheidomat/app/magic-8-ball/page.tsx
2026-07-23 21:59:15 +02:00

147 lines
5.7 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
import type { Metadata } from "next";
import Link from "next/link";
import Magic8Ball from "@/components/tools/magic-8-ball";
import SubpageLayout from "@/components/subpage-layout";
const SITE_URL = "https://entscheidomat.com";
const PAGE_URL = `${SITE_URL}/magic-8-ball`;
const PAGE_TITLE = "Magic 8-Ball online fragen zufällige Antworten";
const PAGE_DESCRIPTION =
"Der Magic 8-Ball beantwortet deine Frage mit einer zufälligen, anpassbaren Antwort. Fragen stellen, schütteln, Antwort erhalten kostenlos, ohne Anmeldung.";
const UPDATED = "23. Juli 2026";
export const metadata: Metadata = {
title: PAGE_TITLE,
description: PAGE_DESCRIPTION,
alternates: { canonical: "/magic-8-ball" },
openGraph: { type: "website", locale: "de_DE", siteName: "Entscheidomat", title: PAGE_TITLE, description: PAGE_DESCRIPTION, url: PAGE_URL, images: ["/opengraph-image"] },
twitter: { card: "summary_large_image", title: PAGE_TITLE, description: PAGE_DESCRIPTION, images: ["/twitter-image"] },
};
const FAQS = [
{
q: "Wie funktioniert der Magic 8-Ball?",
a: "Stelle optional deine Frage, tippe auf den Ball oder den Button der Ball schüttelt sich kurz und zeigt eine zufällig ausgewählte Antwort aus deiner Antwortliste.",
},
{
q: "Kann ich die Antworten selbst anpassen?",
a: "Ja, du kannst 2 bis 20 eigene Antworten im Editor eintragen. Sie werden automatisch lokal gespeichert.",
},
{
q: "Sind die Antworten immer eindeutig Ja oder Nein?",
a: "Nein, die klassischen 8-Ball-Antworten sind oft bewusst vage formuliert (z. B. „Frag später nochmal“). Für eine eindeutige Ja/Nein-Antwort eignet sich der Ja-Nein-Generator besser.",
},
{
q: "Werden meine Antworten gespeichert oder an einen Server übertragen?",
a: "Deine Antwortliste wird nur lokal im localStorage deines Browsers gespeichert, nicht an uns übertragen.",
},
{
q: "Kann ich den Ball mehrfach fragen?",
a: "Ja, beliebig oft hintereinander.",
},
];
const jsonLd = {
"@context": "https://schema.org",
"@graph": [
{
"@type": "BreadcrumbList",
itemListElement: [
{ "@type": "ListItem", position: 1, name: "Entscheidomat", item: SITE_URL },
{ "@type": "ListItem", position: 2, name: "Magic 8-Ball", item: PAGE_URL },
],
},
{
"@type": "WebApplication",
name: "Magic 8-Ball",
url: PAGE_URL,
description: PAGE_DESCRIPTION,
applicationCategory: "UtilitiesApplication",
operatingSystem: "Any (Web-Browser)",
isPartOf: { "@id": `${SITE_URL}/#website` },
offers: { "@type": "Offer", price: "0", priceCurrency: "EUR" },
},
{
"@type": "FAQPage",
mainEntity: FAQS.map((f) => ({
"@type": "Question",
name: f.q,
acceptedAnswer: { "@type": "Answer", text: f.a },
})),
},
],
};
const STEPS = [
"Trage optional deine Frage ein.",
"Tippe auf den Ball oder den Button „8-Ball schütteln“.",
"Der Ball schüttelt sich kurz und zeigt eine zufällige Antwort im Fenster.",
"Passe die möglichen Antworten im Editor an (220 Antworten).",
];
const EXAMPLES = [
"„Wird das Projekt heute fertig?“",
"„Soll ich noch mal anrufen?“",
"Spielerische Fragen in der Gruppe stellen",
];
const VORTEILE = (
<p>
Eigene Antwortliste möglich (220 Antworten, automatisch gespeichert). Die klassischen
Antworten sind oft bewusst mehrdeutig formuliert für eine eindeutige Ja- oder
Nein-Entscheidung eignet sich der{" "}
<Link href="/ja-nein-generator" className="text-[#c97d60] font-medium hover:underline underline-offset-2">
Ja-Nein-Generator
</Link>{" "}
besser.
</p>
);
const ADDITIONAL_CONTENT = (
<article className="space-y-4 text-base leading-relaxed text-ink-soft">
<h2 className="font-display text-2xl sm:text-3xl font-semibold text-ink">
Magic 8-Ball online: spielerische Antworten auf deine Frage
</h2>
<p>
Der Magic 8-Ball ist eine spielerische Entscheidungshilfe mit anpassbaren Antworten.
Frage den Ball, schüttle ihn und erhalte eine zufällig ausgewählte Antwort. Mit einer
eigenen Antwortliste kannst du ihn für Spiele, Gruppenfragen oder kleine Impulse
personalisieren.
</p>
<h2 className="font-display text-2xl sm:text-3xl font-semibold text-ink">
Magic 8-Ball, Ja-Nein-Generator oder Münzwurf?
</h2>
<p>
Der Magic 8-Ball passt zu offenen und spielerischen Fragen, weil seine Antworten auch
mehrdeutig sein können. Für eine eindeutige Antwort nutze den <Link href="/ja-nein-generator" className="text-[#c97d60] font-medium hover:underline underline-offset-2">Ja-Nein-Generator</Link>; für Kopf oder Zahl oder zwei frei benannte Optionen eignet sich die <Link href="/muenze-werfen" className="text-[#c97d60] font-medium hover:underline underline-offset-2">Online-Münze</Link>.
</p>
</article>
);
export default function Magic8BallPage() {
return (
<>
<script
type="application/ld+json"
dangerouslySetInnerHTML={{
__html: JSON.stringify(jsonLd).replace(/</g, "\\u003c"),
}}
/>
<SubpageLayout
toolSlug="magic-8-ball"
toolName="Magic 8-Ball"
h1Title="Magic 8-Ball online fragen zufällige Antworten erhalten"
introText="Der Magic 8-Ball beantwortet deine Frage mit einer zufälligen Antwort aus einer anpassbaren Liste. Stelle deine Frage, schüttle den Ball per Klick und erhalte sofort eine Antwort kostenlos, ohne Anmeldung, direkt im Browser."
steps={STEPS}
examples={EXAMPLES}
vorteileText={VORTEILE}
additionalContent={ADDITIONAL_CONTENT}
faqs={FAQS}
updatedDate={UPDATED}
>
<Magic8Ball />
</SubpageLayout>
</>
);
}