Problem
Hero images are currently generic abstract stock backgrounds (src/assets/heroes/post-bg-01…06.jpg, all aliased as "Abstract neural pattern"). They read as decorative filler rather than intentional design, and the small fixed pool means posts reuse or duplicate the same image.
The hero isn't purely cosmetic — it doubles as the OG/social preview image (fallbackImage = post.data.hero?.src in src/pages/[slug].astro), so we want to keep an image per post, just a more deliberate one.
Proposal
Replace per-post stock backgrounds with a small set of category banners — one distinctive image per category, reused within that category:
Systems
DevOps
Career
Automating
- (add as new categories appear)
This makes the visual system scale: a new post in an existing category inherits its banner; only a new category needs new art. Banners feel intentional (tied to topic) without bespoke art per post.
Scope
Notes
Layout already supports a no-hero fallback (PostLayout.astro renders a text header when hero is absent), so this is non-breaking to iterate on.
Problem
Hero images are currently generic abstract stock backgrounds (
src/assets/heroes/post-bg-01…06.jpg, all aliased as "Abstract neural pattern"). They read as decorative filler rather than intentional design, and the small fixed pool means posts reuse or duplicate the same image.The hero isn't purely cosmetic — it doubles as the OG/social preview image (
fallbackImage = post.data.hero?.srcinsrc/pages/[slug].astro), so we want to keep an image per post, just a more deliberate one.Proposal
Replace per-post stock backgrounds with a small set of category banners — one distinctive image per
category, reused within that category:SystemsDevOpsCareerAutomatingThis makes the visual system scale: a new post in an existing category inherits its banner; only a new category needs new art. Banners feel intentional (tied to topic) without bespoke art per post.
Scope
src/assets/heroes/(e.g.cat-systems.jpg)heroby category — either set per-post, or derive fromcategoryin the layout so frontmatter doesn't repeat itheroAltper banner (drop the generic "Abstract neural pattern")post-bg-0X.jpgfiles once migratedNotes
Layout already supports a no-hero fallback (
PostLayout.astrorenders a text header whenherois absent), so this is non-breaking to iterate on.