Files
vans-diy-bastelbedarf/src/pages/en/index.astro
T

102 lines
4.4 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
import Layout from "../../layouts/Layout.astro";
import ProductCard from "../../components/ProductCard.astro";
import { categories } from "../../data/categories";
import { products } from "../../data/products";
import type { Locale } from "../../i18n/config";
const lang: Locale = "en";
const neuheiten = products.filter((p) => p.badges.includes("neu")).slice(0, 4);
const bestseller = products.filter((p) => p.badges.includes("bestseller")).slice(0, 4);
const sale = products.filter((p) => p.badges.includes("sale") || p.preisAlt).slice(0, 4);
---
<Layout title="Home" lang={lang} path="/">
<section class="hero">
<img src="/logo.png" alt="" aria-hidden="true" class="hero-watermark" />
<div class="container hero-content">
<div class="hero-gallery">
<div class="hero-photo hero-photo-1"><img src="/img/hero-plushie-bunny.webp" alt="Crocheted bunny plushie in blue dungarees, in the grass" loading="eager" width="900" height="1200" /></div>
<div class="hero-photo hero-photo-2"><img src="/img/hero-plushie-turtle.webp" alt="Crocheted turtle plushie in light blue and yellow" loading="eager" width="900" height="1200" /></div>
<div class="hero-photo hero-photo-3"><img src="/img/hero-plushie-octopus.webp" alt="Crocheted octopus plushie in pink" loading="eager" width="900" height="1200" /></div>
<div class="hero-photo hero-photo-4"><img src="/img/hero-plushie-penguin.webp" alt="Crocheted penguin plushie in light blue and white" loading="eager" width="900" height="1200" /></div>
</div>
<div class="hero-inner">
<span class="eyebrow">🩵 Van's DIY & Bastelbedarf</span>
<h1>Handmade with love <br />creativity to gift<br />and to keep.</h1>
<p class="lead">Crochet, plushies, jewelry and craft supplies every piece made by hand, with heart and patience.</p>
<div class="btn-row">
<a class="btn btn-primary" href="/en/shop/">Browse now</a>
<a class="btn btn-outline" href="/en/ueber-die-kreative/">About the maker</a>
</div>
</div>
</div>
</section>
<section class="section-tight">
<div class="container">
<h2 class="text-center">Explore categories</h2>
<div class="grid grid-3" style="margin-top:1.5rem;">
{categories.map((c) => (
<a class="card category-card" href={`/en/shop/${c.slug}/`}>
<span class="cat-icon" aria-hidden="true">{c.icon}</span>
<h3>{c.name[lang]}</h3>
<p class="small">{c.description[lang]}</p>
</a>
))}
</div>
</div>
</section>
{neuheiten.length > 0 && (
<section class="section-tight">
<div class="container">
<div class="section-head">
<h2>New arrivals</h2>
<a class="small" href="/en/shop/">View all →</a>
</div>
<div class="grid grid-4">{neuheiten.map((p) => <ProductCard product={p} lang={lang} />)}</div>
</div>
</section>
)}
{bestseller.length > 0 && (
<section class="section-tight">
<div class="container">
<div class="section-head">
<h2>Bestsellers</h2>
<a class="small" href="/en/shop/">View all →</a>
</div>
<div class="grid grid-4">{bestseller.map((p) => <ProductCard product={p} lang={lang} />)}</div>
</div>
</section>
)}
{sale.length > 0 && (
<section class="section-tight">
<div class="container">
<div class="section-head">
<h2>Sale %</h2>
<a class="small" href="/en/sale/">View all offers →</a>
</div>
<div class="grid grid-4">{sale.map((p) => <ProductCard product={p} lang={lang} />)}</div>
</div>
</section>
)}
<section class="section">
<div class="container grid grid-2 creator-section">
<div class="portrait-frame creator-photo">
<img src="/img/vanvan-portrait.png" alt="Portrait photo of VanVan" width="640" height="640" loading="lazy" />
<span class="portrait-badge">🩵 Handmade</span>
</div>
<div>
<span class="eyebrow">The maker behind the shop</span>
<h2>Hi, I'm VanVan 🩵</h2>
<blockquote class="pull-quote">"Every stitch tells its own story because true handmade craft isn't made with yarn alone, but above all with a whole lot of heart."</blockquote>
<a class="btn btn-outline" href="/en/ueber-die-kreative/">More about me →</a>
</div>
</div>
</section>
</Layout>