From 018f27156cf96c57d8ac9e0e16367ccbfe1e02d6 Mon Sep 17 00:00:00 2001 From: Felix Klement Date: Sun, 4 Oct 2026 19:40:32 +0200 Subject: [PATCH] asdf --- src/assets/partners/university-of-passau.webp | Bin 0 -> 20366 bytes src/assets/partners/xg-aloe.webp | Bin 0 -> 11784 bytes src/assets/partners/xg-incubator.webp | Bin 0 -> 16446 bytes src/components/Field.astro | 62 +++++++++++ src/components/home/Insights.astro | 19 ++-- src/components/home/PartnerLogo.astro | 35 +++++++ src/components/home/Proof.astro | 96 ++++++++++++++++++ src/content.config.ts | 8 +- src/pages/_InsightsIndex.astro | 56 +++++----- src/pages/_Post.astro | 6 +- src/styles/tokens.css | 12 +++ 11 files changed, 249 insertions(+), 45 deletions(-) create mode 100644 src/assets/partners/university-of-passau.webp create mode 100644 src/assets/partners/xg-aloe.webp create mode 100644 src/assets/partners/xg-incubator.webp create mode 100644 src/components/Field.astro create mode 100644 src/components/home/PartnerLogo.astro diff --git a/src/assets/partners/university-of-passau.webp b/src/assets/partners/university-of-passau.webp new file mode 100644 index 0000000000000000000000000000000000000000..1dc58c7213ded23db15997e4f4b0a252308711cc GIT binary patch literal 20366 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 literal 0 HcmV?d00001 diff --git a/src/assets/partners/xg-aloe.webp b/src/assets/partners/xg-aloe.webp new file mode 100644 index 0000000000000000000000000000000000000000..34bca65a04ce5f8e115355be32a774c6abe98244 GIT binary patch literal 11784 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 literal 0 HcmV?d00001 diff --git a/src/assets/partners/xg-incubator.webp b/src/assets/partners/xg-incubator.webp new file mode 100644 index 0000000000000000000000000000000000000000..8ecd33bdaafb9f370f5a8646368f0f658635c2af GIT binary patch literal 16446 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 MhAH%42B07R1Bha(Jpcdz literal 0 HcmV?d00001 diff --git a/src/components/Field.astro b/src/components/Field.astro new file mode 100644 index 0000000..46acaaa --- /dev/null +++ b/src/components/Field.astro @@ -0,0 +1,62 @@ +--- +/* An abstract colour field with film grain: the picture for an Insights card that has none. + Palette and blob positions follow from `seed` (the entry's slug), so a card keeps its field + wherever it appears and however the list is sorted or filtered. Slot content sits on the + lower edge in paper-coloured type. */ +interface Props { seed: string; class?: string } +const { seed, class: className } = Astro.props; + +/* A base and three blobs per palette, chosen so neighbouring hues sit well together. */ +const palettes = [ + ['field-plum', 'field-ember', 'field-peach', 'field-rose'], + ['field-cobalt', 'field-sky', 'field-lilac', 'field-peach'], + ['field-jade', 'field-mint', 'field-sun', 'field-sky'], + ['field-violet', 'field-rose', 'field-lilac', 'field-sun'], + ['field-ocean', 'logo-cyan', 'field-mint', 'field-ember'], + ['field-ember', 'field-sun', 'field-rose', 'field-peach'], +]; + +/* FNV-1a, then a small LCG for the positions: stable across builds and machines. */ +let h = 2166136261; +for (const ch of seed) h = Math.imul(h ^ ch.codePointAt(0)!, 16777619) >>> 0; +const next = () => (h = (Math.imul(h, 1664525) + 1013904223) >>> 0) / 2 ** 32; +const [base, ...blobs] = palettes[h % palettes.length]; +const at = (lo: number, hi: number) => Math.round(lo + next() * (hi - lo)); +/* Blobs stay mostly in the upper two thirds, so the type at the bottom keeps a calmer ground. */ +const style = [`--base: var(--${base})`] + .concat(blobs.map((c, k) => `--c${k + 1}: var(--${c}); --x${k + 1}: ${at(0, 100)}%; --y${k + 1}: ${at(0, 70)}%`)) + .join('; '); +--- +
+ +
+ + diff --git a/src/components/home/Insights.astro b/src/components/home/Insights.astro index 05cdab3..7298440 100644 --- a/src/components/home/Insights.astro +++ b/src/components/home/Insights.astro @@ -1,6 +1,7 @@ --- import { getFeed } from '../../data/insights'; import { Picture } from 'astro:assets'; +import Field from '../Field.astro'; import { localePath, t, type Lang } from '../../i18n/ui'; interface Props { lang: Lang } const { lang } = Astro.props; @@ -20,9 +21,9 @@ const m = ui.insights.mention;
  • -

    {ui.insights.event.when}

    + {ui.insights.event.when}

    {ui.insights.event.category}

    {ui.insights.event.text}

    @@ -77,14 +78,10 @@ const m = ui.insights.mention; .insights__card:hover h3 { text-decoration: underline; text-decoration-thickness: var(--hairline); text-underline-offset: 0.12em; } .insights__img, :global(.insights__img) { width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; margin-bottom: var(--space-2); } .insights__card h3 { max-width: 18em; } - .insights__event-when, .insights__panel { - display: flex; - align-items: flex-end; + /* No picture: a colour field carries the source (or the event date) in large type. */ + :global(.insights__panel) { aspect-ratio: 3 / 2; - padding: var(--space-5); margin-bottom: var(--space-2); - background: var(--paper-deep); - color: var(--ink-muted); font-size: var(--step-title); line-height: var(--leading-title); letter-spacing: var(--track-h2); diff --git a/src/components/home/PartnerLogo.astro b/src/components/home/PartnerLogo.astro new file mode 100644 index 0000000..326f6a8 --- /dev/null +++ b/src/components/home/PartnerLogo.astro @@ -0,0 +1,35 @@ +--- +/* One partner logo, two states. At rest: an ink silhouette (the image's alpha is the mask), so a + logo drawn for a dark ground reads as print on paper. On hover of the surrounding + `[data-partner]`: the original colours on night, the ground they were drawn for. */ +interface Props { name: string; src: ImageMetadata; url: string; h: string } +const { name, src, url, h } = Astro.props; +--- + + + diff --git a/src/components/home/Proof.astro b/src/components/home/Proof.astro index 3bd9495..6427dcf 100644 --- a/src/components/home/Proof.astro +++ b/src/components/home/Proof.astro @@ -1,8 +1,22 @@ --- +import { getImage } from 'astro:assets'; import { t, type Lang } from '../../i18n/ui'; +import PartnerLogo from './PartnerLogo.astro'; +import incubator from '../../assets/partners/xg-incubator.webp'; +import aloe from '../../assets/partners/xg-aloe.webp'; +import passau from '../../assets/partners/university-of-passau.webp'; interface Props { lang: Lang } const { lang } = Astro.props; const ui = t(lang); + +/* The partner logos as on ciphercell.de (see PartnerLogo.astro for the two states). `h` balances + optical size: the incubator wordmark is long and thin, the other two carry a mark. */ +const roles = ui.proof.partnerRoles; +const logos = await Promise.all([ + { name: 'xG-Incubator', role: roles.incubator, src: incubator, h: 'var(--space-5)' }, + { name: 'xG-ALOE', role: roles.aloe, src: aloe, h: 'var(--space-7)' }, + { name: lang === 'de' ? 'Universität Passau' : 'University of Passau', role: roles.passau, src: passau, h: 'var(--space-7)' }, +].map(async (l) => ({ ...l, url: (await getImage({ src: l.src, format: 'webp' })).src }))); ---
    @@ -15,6 +29,34 @@ const ui = t(lang);
  • ))} + +
    +

    {ui.proof.partners}

    +
      + {logos.map((l) => ( +
    • + +
    • + ))} +
    +
    + + {/* Variant B, for comparison: one column per partner across the full width, with its role. + Keep one of the two and delete the other. */} +
    +

    {ui.proof.partners}

    +
      + {logos.map((l) => ( +
    • + +

      + {l.name} + {l.role} +

      +
    • + ))} +
    +
    @@ -31,9 +73,63 @@ const ui = t(lang); .proof__item:last-child { border-bottom: var(--hairline) solid var(--line); } .proof__name { font-weight: var(--weight-medium); } .proof__body { max-width: 30em; } + + .partners { + grid-column: 1 / -1; + margin-top: var(--space-9); + display: grid; + gap: var(--space-5); + } + .partners__list { + display: grid; + border-top: var(--hairline) solid var(--line); + } + .partners__item { + display: flex; + align-items: center; + min-height: var(--space-9); + padding: var(--space-5) var(--space-4); + border-bottom: var(--hairline) solid var(--line); + } + /* Hover answers the pointer with the logo's own ground: night, original colours. */ + [data-partner] { transition: background-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease); } + @media (hover: hover) { + [data-partner]:hover { background-color: var(--night); color: var(--ink-on-night); } + } + @media (prefers-reduced-motion: reduce) { [data-partner] { transition: none; } } + + /* Variant B */ + .partners-b { + grid-column: 1 / -1; + margin-top: var(--space-9); + display: grid; + gap: var(--space-5); + } + .partners-b__list { display: grid; border-top: var(--hairline) solid var(--line); } + .partners-b__item { + display: grid; + align-content: space-between; + gap: var(--space-7); + min-height: calc(var(--space-9) * 2.5); + padding: var(--space-6) var(--space-5); + border-bottom: var(--hairline) solid var(--line); + } + .partners-b__text { display: grid; gap: var(--space-1); } + .partners-b__name { font-weight: var(--weight-medium); } + .partners-b__role { color: var(--ink-muted); transition: color var(--dur-fast) var(--ease); } + @media (hover: hover) { + .partners-b__item:hover .partners-b__role { color: var(--ink-muted-on-night); } + } + @media (min-width: 48rem) { .proof__title { grid-column: 1 / span 6; } .proof__list { grid-column: 7 / span 6; } .proof__item { grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr); column-gap: var(--gap); } + .partners { grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: var(--gap); align-items: start; } + .partners__label { grid-column: 1 / span 6; padding-top: var(--space-5); } + .partners__list { grid-column: 7 / span 6; grid-template-columns: repeat(3, minmax(0, 1fr)); column-gap: var(--gap); } + .partners-b__list { grid-template-columns: repeat(3, minmax(0, 1fr)); border-bottom: var(--hairline) solid var(--line); } + .partners-b__item { border-bottom: 0; } + .partners-b__item + .partners-b__item { border-left: var(--hairline) solid var(--line); } } diff --git a/src/content.config.ts b/src/content.config.ts index f91e2d3..0a79a9a 100644 --- a/src/content.config.ts +++ b/src/content.config.ts @@ -15,10 +15,12 @@ const insights = defineCollection({ readingTime: z.number().int().positive(), author: z.string(), authorRole: z.string(), - cover: image(), - coverAlt: z.string(), + /* Optional: without a cover the cards show a colour field (src/components/Field.astro) + and the essay page opens without an image. */ + cover: image().optional(), + coverAlt: z.string().optional(), tags: z.array(z.string()).default([]), - }), + }).refine((d) => !d.cover || d.coverAlt, { message: 'coverAlt is required with a cover', path: ['coverAlt'] }), }); /* Mentions: short references to posts elsewhere (LinkedIn first) that CipherCell took part in. diff --git a/src/pages/_InsightsIndex.astro b/src/pages/_InsightsIndex.astro index 64c4447..bddf43e 100644 --- a/src/pages/_InsightsIndex.astro +++ b/src/pages/_InsightsIndex.astro @@ -2,6 +2,7 @@ import { feedType, feedTypes, getFeed } from '../data/insights'; import { Picture } from 'astro:assets'; import Base from '../layouts/Base.astro'; +import Field from '../components/Field.astro'; import { formatDate, localePath, t, type Lang } from '../i18n/ui'; interface Props { lang: Lang } @@ -45,19 +46,25 @@ const filters = [ {feed.map((item) => item.kind === 'post' ? (
  • -
    - -
    + {item.entry.data.cover ? ( +
    + +
    + ) : ( + + + + )}
  • - + + + +
    -
    + {d.cover &&
    -
    +
    }
    diff --git a/src/styles/tokens.css b/src/styles/tokens.css index c37accb..0a017cc 100644 --- a/src/styles/tokens.css +++ b/src/styles/tokens.css @@ -29,6 +29,18 @@ --field-jade: #3B8C78; --field-slate: #3A4862; --field-plum: #66508E; + /* Warmer tones for the Insights card fields (cards without a picture), so the feed reads as + colour rather than paper. Fields only, never text or UI. Combined in src/components/Field.astro. */ + --field-ember: #DE5B32; + --field-peach: #F2AE84; + --field-rose: #D4547C; + --field-violet: #6E4FCF; + --field-lilac: #B7A1EE; + --field-sun: #EFB443; + --field-mint: #86CFB0; + --field-sky: #6AAEE8; + /* Darkens the lower edge of a field so paper-coloured type on it holds 3:1 or better. */ + --field-scrim: linear-gradient(to top, rgb(14 16 15 / 0.55), rgb(14 16 15 / 0) 65%); /* Signal: the one status tone the brief allows. Used only for a live state (the coming-soon page's current phase), at most twice per page. Never for text, links or decoration. */
  • {item.kind === 'post' ? ( - + /> : }

    {item.entry.data.category}

    {item.entry.data.title}

    ) : ( - +

    {m.category(item.entry.data.platform)}

    {item.entry.data.title}

    @@ -45,7 +46,7 @@ const m = ui.insights.mention; ))}