first commit
This commit is contained in:
90
src/layouts/Layout.astro
Normal file
90
src/layouts/Layout.astro
Normal file
@@ -0,0 +1,90 @@
|
||||
---
|
||||
import "../styles/global.css";
|
||||
import Header from "../components/layout/Header.astro";
|
||||
import Footer from "../components/layout/Footer.astro";
|
||||
import SpeedInsights from "@vercel/speed-insights/astro"
|
||||
const {
|
||||
pageTitle = "EFEELE | Programmer and Web Developer 🚀",
|
||||
description = "Welcome to EFEELE's website, where I develop software and share knowledge.",
|
||||
ogimage = {
|
||||
url: "/images/imagedefault.webp",
|
||||
alt: "Default image of EFEELE",
|
||||
},
|
||||
} = Astro.props;
|
||||
|
||||
const siteUrl = new URL(Astro.url).origin;
|
||||
const SEO = {
|
||||
sitename: "EFEELE | Programmer and Web Developer 🚀",
|
||||
url: siteUrl,
|
||||
locale: "en_US",
|
||||
author: "Fernando Lopez | EFEELE",
|
||||
twitter: "@efeeledev",
|
||||
};
|
||||
|
||||
|
||||
const twitterimage = `${siteUrl}${ogimage.url}`;
|
||||
---
|
||||
|
||||
<html
|
||||
lang="en"
|
||||
class="dark:bg-[#0E0E11] bg-mint-50/5 font-montserrat scroll-smooth"
|
||||
>
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<meta name="viewport" content="width=device-width" />
|
||||
<title>{pageTitle}</title>
|
||||
<!-- Favicon for different platforms -->
|
||||
<link rel="icon" href="/favicon-32x32.png" sizes="32x32" />
|
||||
<link rel="icon" href="/favicon-16x16.png" sizes="16x16" />
|
||||
<link rel="apple-touch-icon" href="/apple-touch-icon.png" />
|
||||
<link rel="icon" href="/android-chrome-192x192.png" sizes="192x192" />
|
||||
<link rel="icon" href="/android-chrome-512x512.png" sizes="512x512" />
|
||||
|
||||
<!-- Web manifest -->
|
||||
<link rel="manifest" href="/site.webmanifest" />
|
||||
|
||||
<meta name="description" content={description} />
|
||||
<meta name="author" content={SEO.author} />
|
||||
<meta name="robots" content="index, follow" />
|
||||
<link rel="canonical" href="https://www.efeele.dev/">
|
||||
<!-- Open Graph / Facebook -->
|
||||
<meta property="og:title" content={pageTitle} />
|
||||
<meta property="og:description" content={description} />
|
||||
<meta property="og:image" content={ogimage.url} />
|
||||
<meta property="og:image:alt" content={ogimage.alt} />
|
||||
<meta property="og:url" content={SEO.url} />
|
||||
<meta property="og:type" content="website" />
|
||||
<meta property="og:site_name" content={SEO.sitename} />
|
||||
<meta property="og:locale" content={SEO.locale} />
|
||||
|
||||
<!-- Twitter Cards -->
|
||||
<meta name="twitter:card" content="summary_large_image" />
|
||||
<meta name="twitter:title" content={pageTitle} />
|
||||
<meta name="twitter:description" content={description} />
|
||||
<meta name="twitter:image" content={twitterimage} />
|
||||
<meta name="twitter:image:alt" content={ogimage.alt} />
|
||||
<meta name="twitter:site" content={SEO.twitter} />
|
||||
|
||||
<meta name="theme-color" content="#0E0E11"/>
|
||||
|
||||
</head>
|
||||
<body class="overflow-x-hidden">
|
||||
<SpeedInsights/>
|
||||
<div class="blur-circle"></div>
|
||||
<div
|
||||
style=" background:linear-gradient(45deg, rgba(96, 250, 155, 0) 10.79%, rgba(96, 250, 170, 0.03) 40.92%, rgba(96, 250, 155, 0) 90.35%)"
|
||||
class="fixed top-0 left-0 w-full h-full pointer-events-none -z-1"
|
||||
>
|
||||
</div>
|
||||
<Header />
|
||||
|
||||
<div class="min-h-[85vh] ">
|
||||
<slot />
|
||||
</div>
|
||||
|
||||
<Footer />
|
||||
<script>
|
||||
import "../scripts/menu.js";
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user