From 146c8d5279f8d7a148e6ef05c37897c3643adcb9 Mon Sep 17 00:00:00 2001 From: Max Richter Date: Mon, 8 Apr 2024 01:06:23 +0200 Subject: [PATCH] feat: some stuff --- public/projects/plantarium/favicon.svg | 9 ++++ src/components/GoogleyEye.svelte | 15 ++++--- src/components/HeroCard.astro | 5 +-- src/components/Image.astro | 5 ++- src/components/Max.astro | 42 +++++++++---------- src/components/ThemeToggle.svelte | 2 + .../blog/zentralwerk_2051/Fishes.svelte | 7 ++-- .../plantarium/_components/Leaves.svelte | 3 +- src/content/projects/plantarium/index.mdx | 9 +++- src/layouts/Layout.astro | 15 +++++-- src/layouts/global.css | 10 +++-- src/layouts/theme.css | 2 - src/pages/404.astro | 7 ++++ 13 files changed, 85 insertions(+), 46 deletions(-) create mode 100644 public/projects/plantarium/favicon.svg create mode 100644 src/pages/404.astro diff --git a/public/projects/plantarium/favicon.svg b/public/projects/plantarium/favicon.svg new file mode 100644 index 0000000..cfee174 --- /dev/null +++ b/public/projects/plantarium/favicon.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/src/components/GoogleyEye.svelte b/src/components/GoogleyEye.svelte index 13ea1f8..fce46d1 100644 --- a/src/components/GoogleyEye.svelte +++ b/src/components/GoogleyEye.svelte @@ -95,8 +95,7 @@ role="img" aria-label="Toggle Googley Eyes" aria-hidden="true" - on:keydown={(ev) => (ev.key === "Enter" ? ($visible = !$visible) : "")} -> + on:keydown={(ev) => (ev.key === "Enter" ? ($visible = !$visible) : "")}> {#if $visible}
@@ -110,8 +109,10 @@ width: 100%; height: 100%; display: flex; - width: 50px; - height: 50px; + max-width: 50px; + max-height: 50px; + width: 10vw; + height: 10vw; justify-content: center; align-items: center; } @@ -119,8 +120,10 @@ .eye { position: relative; overflow: hidden; - width: 50px; - height: 50px; + max-width: 50px; + max-height: 50px; + width: 10vw; + height: 10vw; border-radius: 50%; background-color: white; display: flex; diff --git a/src/components/HeroCard.astro b/src/components/HeroCard.astro index c92ceab..9376df6 100644 --- a/src/components/HeroCard.astro +++ b/src/components/HeroCard.astro @@ -32,11 +32,10 @@ const link = translatePath(`/${collection}/${slug.split("/")[0]}`); --- + classes={`grid gradient border-1 border-neutral overflow-hidden ${cover ? "grid-rows-[200px_1fr] xs:grid-rows-none xs:grid-cols-[1fr_200px]" : ""}`}> - {icon && } + {icon && } {title} diff --git a/src/components/Image.astro b/src/components/Image.astro index d18dd9d..5f077da 100644 --- a/src/components/Image.astro +++ b/src/components/Image.astro @@ -54,5 +54,6 @@ const sizes = [ widths={sizes.map((size) => size.width)} sizes={sizes .map((size) => `${size.media || "100vw"} ${size.width}px`) - .join(", ")} -/> + .join(", ")}> + + diff --git a/src/components/Max.astro b/src/components/Max.astro index 6ae9f9b..2002d96 100644 --- a/src/components/Max.astro +++ b/src/components/Max.astro @@ -10,24 +10,24 @@ const t = useTranslations(Astro.url); --- + classes="googley-eye-target relative rounded-diag-md border border-neutral bg-dark grid xs:grid-cols-[250px_1fr] min-h-[180px] sm:h-[180px] mt-8">
- its mee -
- -
-
- + class="image relative h-[130%] self-end items-end flex overflow-hidden order-last xs:order-first"> +
+ its mee +
+ +
+
+ +
@@ -81,11 +81,11 @@ const t = useTranslations(Astro.url); position: absolute; } .eye.left { - top: 29%; - right: 28%; + top: 24%; + right: 27%; } .eye.right { - top: 31%; - right: 12%; + top: 26%; + right: 13%; } diff --git a/src/components/ThemeToggle.svelte b/src/components/ThemeToggle.svelte index bf62490..571f326 100644 --- a/src/components/ThemeToggle.svelte +++ b/src/components/ThemeToggle.svelte @@ -10,6 +10,8 @@ document.documentElement.classList.remove("light", "dark"); document.documentElement.classList.add($theme); localStorage.setItem("theme", $theme); + // @ts-ignore + window["updateBackgroundColor"]?.(); } function toggleTheme() { diff --git a/src/content/blog/zentralwerk_2051/Fishes.svelte b/src/content/blog/zentralwerk_2051/Fishes.svelte index 89d7970..e082f28 100644 --- a/src/content/blog/zentralwerk_2051/Fishes.svelte +++ b/src/content/blog/zentralwerk_2051/Fishes.svelte @@ -45,18 +45,17 @@ render && fishCanvasBack.update(t, timeOffset); } loaded = true; + // @ts-ignore + window["updateBackgroundColor"] = updateBackgroundColor; }); - - { speed = Math.min(speed + 0.001, 0.15); timeOffset += speed; - }} -/> + }} /> diff --git a/src/content/projects/plantarium/_components/Leaves.svelte b/src/content/projects/plantarium/_components/Leaves.svelte index d85ee62..9e86395 100644 --- a/src/content/projects/plantarium/_components/Leaves.svelte +++ b/src/content/projects/plantarium/_components/Leaves.svelte @@ -23,6 +23,8 @@ onMount(() => { updateBackgroundColor(); createLeaves({ canvas, num: 20, minZ: 0, maxZ: 1, color }); + // @ts-ignore + window["updateBackgroundColor"] = updateBackgroundColor; setTimeout(() => { loaded = true; }, 100); @@ -30,7 +32,6 @@ - diff --git a/src/content/projects/plantarium/index.mdx b/src/content/projects/plantarium/index.mdx index d2ebb6b..8ba8a65 100644 --- a/src/content/projects/plantarium/index.mdx +++ b/src/content/projects/plantarium/index.mdx @@ -5,13 +5,20 @@ cover: ./images/plantarium.png featured: true links: [["website", "https://plant.max-richter.dev"], ["git", "https://github.com/jim-fx/plantarium"]] tags: ["Web", "3D", "Svelte", "Node-Systeme"] +icon: /projects/plantarium/favicon.svg draft: false toc: true --- # Einführung -Plantarium ist eine WebApp mit der Nutzer 3D Model von Pflanzen generieren können. Der erste Prototyp war innerhalb von zwei Wochen intensiver Arbeit fertig und sah ungefähr so aus: +Plantarium ist die Schnittmenge zwischen zwei Dingen die ich sehr faszinierend finde, Pflanzen und 3D Modellierung. +Es ist eine WebApp die es Nutzern ermöglicht Pflanzen zu erstellen und zu exportieren. +Die User legen dabei über ein Node-System fest wie die Pflanze aussieht und Plantarium generiert daraus ein 3D Modell. + +# Die Anfänge und Herausforderungen + +Der erste Prototyp war innerhalb von zwei Wochen intensiver Arbeit fertig und sah ungefähr so aus: import ImageSlider from "@components/ImageSlider.svelte" import Leaves from "./_components/Leaves.svelte" diff --git a/src/layouts/Layout.astro b/src/layouts/Layout.astro index 015d488..c4abe79 100644 --- a/src/layouts/Layout.astro +++ b/src/layouts/Layout.astro @@ -72,19 +72,28 @@ import "./global.css"; - +
-