100 lines
2.6 KiB
Plaintext
100 lines
2.6 KiB
Plaintext
---
|
|
import '../../assets/css/main.css'
|
|
import BgParticles from '../components/BgParticles.astro'
|
|
import BgGrid from '../components/BgGrid.astro'
|
|
import HeadFavicon from './HeadFavicon.astro'
|
|
import Navbar from "../components/Navbar.astro";
|
|
interface Props {
|
|
title?: string
|
|
description?: string
|
|
hasParticles?: boolean
|
|
hasGrid?: boolean
|
|
}
|
|
|
|
const { title = "Home", hasParticles = false, hasGrid = false } = Astro.props
|
|
|
|
const baseTitle = 'Alexis Pelé'
|
|
const renderedTitle = `${title} · ${baseTitle}`
|
|
|
|
const { description = baseTitle } = Astro.props
|
|
|
|
const authorName = "Alexis Pelé"
|
|
const authorUsername = "AlexisNP"
|
|
const websiteDomain = "alexcreates.fr"
|
|
---
|
|
|
|
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="UTF-8" />
|
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
<link rel="canonical" href={Astro.url} />
|
|
<meta name="generator" content={ Astro.generator } />
|
|
|
|
<title>{ renderedTitle }</title>
|
|
<meta property="og:title" content={renderedTitle} />
|
|
|
|
<meta name="description" content={description} />
|
|
<meta property="og:description" content={description} />
|
|
<meta name="twitter:description" content={description} />
|
|
|
|
<meta property="author" content={authorName} />
|
|
<meta property="og:author" content={authorName} />
|
|
<meta property="og:author:username" content={authorUsername} />
|
|
|
|
<HeadFavicon />
|
|
|
|
<meta name="msapplication-TileColor" content="#065f46">
|
|
<meta name="theme-color" content="#065f46">
|
|
<meta name="color-scheme" content="dark light" />
|
|
|
|
<meta property="og:site_name" content={websiteDomain} />
|
|
<meta name="twitter:domain" content={websiteDomain} />
|
|
|
|
<meta property="og:type" content="website" />
|
|
|
|
<script type="application/ld+json">
|
|
{
|
|
"@context": "https://schema.org",
|
|
"@type": "Person",
|
|
"email": "mailto:contact@alexcreates.fr",
|
|
"jobTitle": "Web developer",
|
|
"name": "Alexis",
|
|
"familyName": "Pelé",
|
|
"url": "https://alexcreates.fr/",
|
|
"nationality": {
|
|
"@type": "Country",
|
|
"name": "France"
|
|
},
|
|
"pronouns": "he/him",
|
|
"knowsLanguage": [
|
|
{
|
|
"@type": "Language",
|
|
"name": "French",
|
|
"alternateName": "fr"
|
|
},
|
|
{
|
|
"@type": "Language",
|
|
"name": "English",
|
|
"alternateName": "en"
|
|
}
|
|
]
|
|
}
|
|
</script>
|
|
</head>
|
|
|
|
<body class="h-screen relative bg-slate-950 text-white px-12 overflow-hidden">
|
|
<Navbar floating />
|
|
|
|
<slot />
|
|
|
|
{hasParticles &&
|
|
<BgParticles />
|
|
}
|
|
|
|
{hasGrid &&
|
|
<BgGrid />
|
|
}
|
|
</body>
|
|
</html>
|