feat: seo
@@ -1,5 +1,7 @@
|
|||||||
{
|
{
|
||||||
"$schema": "https://inlang.com/schema/message-format-plugin",
|
"$schema": "https://inlang.com/schema/message-format-plugin",
|
||||||
"hello_world": "Hallo Welt",
|
"hello_world": "Hallo Welt",
|
||||||
"pfadi": "Pfadi"
|
"pfadi": "Pfadi",
|
||||||
|
"site_title": "Schreifuchs.ch",
|
||||||
|
"site_description": "Portfolio von Niklas - Fotografie, Informatik, Musik und Video."
|
||||||
}
|
}
|
||||||
@@ -1,5 +1,7 @@
|
|||||||
{
|
{
|
||||||
"$schema": "https://inlang.com/schema/message-format-plugin",
|
"$schema": "https://inlang.com/schema/message-format-plugin",
|
||||||
"hello_world": "Hello World",
|
"hello_world": "Hello World",
|
||||||
"pfadi": "Scouts"
|
"pfadi": "Scouts",
|
||||||
|
"site_title": "Schreifuchs.ch",
|
||||||
|
"site_description": "Portfolio of Niklas - Photography, Informatics, Music and Video."
|
||||||
}
|
}
|
||||||
@@ -4,6 +4,8 @@
|
|||||||
<meta charset="utf-8" />
|
<meta charset="utf-8" />
|
||||||
<link rel="icon" href="%sveltekit.assets%/favicon.png" />
|
<link rel="icon" href="%sveltekit.assets%/favicon.png" />
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||||
|
<title>schreifuchs.ch</title>
|
||||||
|
<meta name="description" content="Portfolio von Niklas - Fotografie, Informatik, Musik und Video." />
|
||||||
%sveltekit.head%
|
%sveltekit.head%
|
||||||
</head>
|
</head>
|
||||||
<body data-sveltekit-preload-data="hover">
|
<body data-sveltekit-preload-data="hover">
|
||||||
|
|||||||
@@ -4,10 +4,16 @@
|
|||||||
import { ParaglideJS } from '@inlang/paraglide-sveltekit';
|
import { ParaglideJS } from '@inlang/paraglide-sveltekit';
|
||||||
import { i18n } from '$lib/i18n';
|
import { i18n } from '$lib/i18n';
|
||||||
import { languageTag } from '$lib/paraglide/runtime';
|
import { languageTag } from '$lib/paraglide/runtime';
|
||||||
|
import * as m from '$lib/paraglide/messages';
|
||||||
|
|
||||||
let { children }: { children?: Snippet } = $props();
|
let { children }: { children?: Snippet } = $props();
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
<svelte:head>
|
||||||
|
<title>{m.site_title()}</title>
|
||||||
|
<meta name="description" content={m.site_description()} />
|
||||||
|
</svelte:head>
|
||||||
|
|
||||||
<ParaglideJS {i18n}>
|
<ParaglideJS {i18n}>
|
||||||
<header class="fixed z-50 mix-blend-difference p-1 w-full flex justify-between items-start">
|
<header class="fixed z-50 mix-blend-difference p-1 w-full flex justify-between items-start">
|
||||||
<a href="/" class="text-white text-2xl">schreifuchs.ch</a>
|
<a href="/" class="text-white text-2xl">schreifuchs.ch</a>
|
||||||
|
|||||||
@@ -29,6 +29,10 @@
|
|||||||
);
|
);
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
<svelte:head>
|
||||||
|
<title>{data.title} - schreifuchs.ch</title>
|
||||||
|
</svelte:head>
|
||||||
|
|
||||||
<ImageTile src={headerImage} alt={data.title}>
|
<ImageTile src={headerImage} alt={data.title}>
|
||||||
<h2 class="flex items-center justify-center h-full text-3xl font-bold text-white text-shadow-lg">
|
<h2 class="flex items-center justify-center h-full text-3xl font-bold text-white text-shadow-lg">
|
||||||
{data.title}
|
{data.title}
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 458 KiB |
|
Before Width: | Height: | Size: 532 KiB |
|
Before Width: | Height: | Size: 416 KiB |
|
Before Width: | Height: | Size: 367 KiB |
|
Before Width: | Height: | Size: 537 KiB |
|
Before Width: | Height: | Size: 503 KiB |
|
Before Width: | Height: | Size: 891 KiB |
|
Before Width: | Height: | Size: 856 KiB |
|
Before Width: | Height: | Size: 423 KiB |
|
Before Width: | Height: | Size: 477 KiB |
|
Before Width: | Height: | Size: 437 KiB |
|
Before Width: | Height: | Size: 977 KiB |
|
Before Width: | Height: | Size: 588 KiB |
|
Before Width: | Height: | Size: 450 KiB |
|
Before Width: | Height: | Size: 811 KiB |
|
Before Width: | Height: | Size: 599 KiB |
|
Before Width: | Height: | Size: 541 KiB |
|
Before Width: | Height: | Size: 444 KiB |
|
Before Width: | Height: | Size: 626 KiB |
|
Before Width: | Height: | Size: 840 KiB |
|
Before Width: | Height: | Size: 267 KiB |
@@ -1,37 +0,0 @@
|
|||||||

|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||

|
|
||||||
@@ -1,2 +0,0 @@
|
|||||||
Lorem ipsum dolor sit amet, officia excepteur ex fugiat reprehenderit enim labore culpa sint ad nisi Lorem pariatur mollit ex esse exercitation amet. Nisi anim cupidatat excepteur officia. Reprehenderit nostrud nostrud ipsum Lorem est aliquip amet voluptate voluptate dolor minim nulla est proident. Nostrud officia pariatur ut officia. Sit irure elit esse ea nulla sunt ex occaecat reprehenderit commodo officia dolor Lorem duis laboris cupidatat officia voluptate. Culpa proident adipisicing id nulla nisi laboris ex in Lorem sunt duis officia eiusmod. Aliqua reprehenderit commodo ex non excepteur duis sunt velit enim. Voluptate laboris sint cupidatat ullamco ut ea consectetur et est culpa et culpa duis.:w
|
|
||||||
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
loremPara
|
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
User-agent: *
|
||||||
|
Allow: /
|
||||||
|
|
||||||
|
# Host
|
||||||
|
Host: https://schreifuchs.ch
|
||||||
@@ -1,5 +0,0 @@
|
|||||||
<iframe width="560" height="315" src="https://www.youtube.com/embed/Xo2X9SLVGLo?si=mzKuq5wG4G8ibEGN" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
|
|
||||||
|
|
||||||
<iframe width="560" height="315" src="https://www.youtube.com/embed/CCKcpBqLHmA?si=aYw30LnH1i2I4cSD" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
|
|
||||||
|
|
||||||
<iframe width="560" height="315" src="https://www.youtube.com/embed/ROuDldvg3PU?si=MI_H4phu_oCQkFjp" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
|
|
||||||