--- // Importing necessary components import Meta from '@components/Meta.astro'; import Navbar from '@components/sections/navbar&footer/Navbar.astro'; import FooterSection from '@components/sections/navbar&footer/FooterSection.astro'; import { SITE } from '@data/constants'; import { getLocaleFromPath, localeHtmlLang, type Locale } from '@/i18n'; import '@styles/global.css'; // Setting expected props const { title = SITE.title, meta, structuredData, lang, customDescription = null, customOgTitle = null, } = Astro.props; const locale = (lang || getLocaleFromPath(Astro.url.pathname)) as Locale; const htmlLang = localeHtmlLang[locale] || localeHtmlLang.de; // Interface to type-check the properties interface Props { title?: string; meta?: string; structuredData?: object; lang?: Locale; customDescription?: string | null; customOgTitle?: string | null; } --- {/* Adding metadata to the HTML document */} {/* Define the title of the page */} {title} { /* Setting up the main structure of the page. The Navbar is placed at the top, with a slot for the main content and FooterSection at the bottom. */ }