From 3441a7e4afe4de58519e4e2312c6598bd8331791 Mon Sep 17 00:00:00 2001 From: Andras Schmelczer Date: Sat, 6 Jun 2026 21:03:26 +0100 Subject: [PATCH] claude --- astro.config.mjs | 13 +- src/components/ArticleList.astro | 4 +- src/components/AtAGlance.astro | 2 +- src/components/PostMedia.astro | 4 +- src/components/PostMediaFigure.astro | 4 +- src/components/PostThumbnail.astro | 4 +- src/components/ProjectLinks.astro | 2 +- src/components/ProjectList.astro | 63 +++++---- src/content.config.ts | 119 +++++++++-------- src/content/projects/_assets/ad-astra.jpg | Bin 47241 -> 0 bytes src/content/projects/_assets/avoid.jpg | Bin 31724 -> 0 bytes src/content/projects/_assets/backup.png | Bin 48041 -> 0 bytes .../projects/_assets/city-simulation.jpg | Bin 130444 -> 0 bytes src/content/projects/_assets/fizika.jpg | Bin 141347 -> 0 bytes .../projects/_assets/fleeting-garden.jpg | Bin 308311 -> 0 bytes src/content/projects/_assets/forex.jpg | Bin 30617 -> 0 bytes src/content/projects/_assets/frame.jpg | Bin 3582085 -> 0 bytes src/content/projects/_assets/great-ai.png | Bin 23690 -> 0 bytes src/content/projects/_assets/leds.jpg | Bin 42753 -> 0 bytes src/content/projects/_assets/my-notes.png | Bin 248748 -> 0 bytes .../projects/_assets/perfect-postcode.jpg | Bin 385956 -> 0 bytes .../projects/_assets/photo-colour-grader.jpg | Bin 145682 -> 0 bytes src/content/projects/_assets/photos.jpg | Bin 89849 -> 0 bytes .../projects/_assets/platform-game.jpg | Bin 17362 -> 0 bytes .../_assets/process-simulator-input.jpg | Bin 58705 -> 0 bytes src/content/projects/_assets/reconcile.png | Bin 48041 -> 0 bytes src/content/projects/_assets/sdf2d.jpg | Bin 36824 -> 0 bytes src/content/projects/_assets/towers.jpg | Bin 21110 -> 0 bytes src/content/projects/_assets/vault-link.svg | 47 ------- src/content/projects/ad-astra.md | 15 --- src/content/projects/avoid.md | 12 -- src/content/projects/backup-container.md | 17 --- src/content/projects/city-simulation.md | 13 -- src/content/projects/colors.md | 13 -- src/content/projects/declared.md | 18 --- src/content/projects/fizika.md | 17 --- src/content/projects/fleeting-garden.md | 17 --- src/content/projects/forex.md | 13 -- src/content/projects/frame.md | 24 ---- src/content/projects/great-ai.md | 20 --- src/content/projects/leds.md | 13 -- src/content/projects/my-notes.md | 15 --- src/content/projects/nuclear-editor.md | 13 -- src/content/projects/nuclear-simulation.md | 13 -- src/content/projects/perfect-postcode.md | 28 ---- src/content/projects/photos.md | 13 -- src/content/projects/platform-game.md | 13 -- src/content/projects/reconcile.md | 23 ---- src/content/projects/sdf-2d.md | 20 --- src/content/projects/towers.md | 15 --- src/content/projects/vault-link.md | 29 ----- .../{posts => work}/_assets/ad-astra.jpg | Bin src/content/{posts => work}/_assets/avoid.jpg | Bin .../{posts => work}/_assets/backup.png | Bin .../_assets/city-simulation.jpg | Bin .../{posts => work}/_assets/decla-red.jpg | Bin .../{projects => work}/_assets/declared.jpg | Bin .../{posts => work}/_assets/fizika.jpg | Bin .../_assets/fleeting-garden.jpg | Bin src/content/{posts => work}/_assets/forex.jpg | Bin src/content/{posts => work}/_assets/frame.jpg | Bin .../{posts => work}/_assets/great-ai.png | Bin src/content/{posts => work}/_assets/leds.jpg | Bin .../{posts => work}/_assets/my-notes.png | Bin .../_assets/nuclear-simulation.jpg | Bin .../_assets/perfect-postcode.jpg | Bin .../_assets/photo-colour-grader.jpg | Bin .../{posts => work}/_assets/photos.jpg | Bin .../{posts => work}/_assets/platform-game.jpg | Bin .../_assets/process-simulator-input.jpg | Bin .../_assets/process-simulator.jpg | Bin .../{posts => work}/_assets/reconcile.png | Bin src/content/{posts => work}/_assets/sdf2d.jpg | Bin .../{posts => work}/_assets/towers.jpg | Bin .../{posts => work}/_assets/vault-link.svg | 0 .../ad-astra-attiny85-game-engine.md | 40 +++--- .../{posts => work}/avoid-early-web-game.md | 17 ++- .../backup-container-btrfs-borg.md | 20 ++- .../city-simulation-unity-traffic.md | 19 ++- .../declared-shared-simulation-code.md | 32 +++-- .../fizika-erettsegi-practice-app.md | 19 ++- .../fleeting-garden-webgpu-drawing.md | 31 +++-- .../foreign-exchange-prediction-experiment.md | 19 ++- .../frame-eink-photo-display.md | 57 ++++++--- .../graph-editor-javafx-simulation-input.md | 19 ++- .../greatai-ai-deployment-api.md | 32 +++-- .../life-towers-immutable-tries.md | 32 +++-- .../lights-synchronized-to-music.md | 19 ++- .../my-notes-android-markdown-app.md | 18 ++- .../nuclear-cooling-simulation.md | 42 +++--- .../perfect-postcode-rust-property-server.md | 57 +++++---- .../{posts => work}/photo-colour-grader.md | 19 ++- .../{posts => work}/photo-site-generator.md | 17 ++- .../{posts => work}/platform-game-c-sdl.md | 18 ++- .../reconcile-text-3-way-merge.md | 32 +++-- .../{posts => work}/sdf-2d-ray-tracing.md | 40 ++++-- .../vault-link-obsidian-sync.md | 43 ++++--- src/layouts/Post.astro | 46 +++---- src/lib/site.ts | 120 +++++++++++------- src/pages/404.astro | 4 +- src/pages/about.astro | 11 +- src/pages/articles/[slug].astro | 4 +- src/pages/articles/index.astro | 6 +- src/pages/index.astro | 11 +- src/pages/projects/index.astro | 4 +- src/pages/rss.xml.ts | 10 +- src/pages/tags/[tag].astro | 10 +- src/pages/tags/index.astro | 6 +- 108 files changed, 641 insertions(+), 869 deletions(-) delete mode 100644 src/content/projects/_assets/ad-astra.jpg delete mode 100644 src/content/projects/_assets/avoid.jpg delete mode 100644 src/content/projects/_assets/backup.png delete mode 100644 src/content/projects/_assets/city-simulation.jpg delete mode 100644 src/content/projects/_assets/fizika.jpg delete mode 100644 src/content/projects/_assets/fleeting-garden.jpg delete mode 100644 src/content/projects/_assets/forex.jpg delete mode 100644 src/content/projects/_assets/frame.jpg delete mode 100644 src/content/projects/_assets/great-ai.png delete mode 100644 src/content/projects/_assets/leds.jpg delete mode 100644 src/content/projects/_assets/my-notes.png delete mode 100644 src/content/projects/_assets/perfect-postcode.jpg delete mode 100644 src/content/projects/_assets/photo-colour-grader.jpg delete mode 100644 src/content/projects/_assets/photos.jpg delete mode 100644 src/content/projects/_assets/platform-game.jpg delete mode 100644 src/content/projects/_assets/process-simulator-input.jpg delete mode 100644 src/content/projects/_assets/reconcile.png delete mode 100644 src/content/projects/_assets/sdf2d.jpg delete mode 100644 src/content/projects/_assets/towers.jpg delete mode 100644 src/content/projects/_assets/vault-link.svg delete mode 100644 src/content/projects/ad-astra.md delete mode 100644 src/content/projects/avoid.md delete mode 100644 src/content/projects/backup-container.md delete mode 100644 src/content/projects/city-simulation.md delete mode 100644 src/content/projects/colors.md delete mode 100644 src/content/projects/declared.md delete mode 100644 src/content/projects/fizika.md delete mode 100644 src/content/projects/fleeting-garden.md delete mode 100644 src/content/projects/forex.md delete mode 100644 src/content/projects/frame.md delete mode 100644 src/content/projects/great-ai.md delete mode 100644 src/content/projects/leds.md delete mode 100644 src/content/projects/my-notes.md delete mode 100644 src/content/projects/nuclear-editor.md delete mode 100644 src/content/projects/nuclear-simulation.md delete mode 100644 src/content/projects/perfect-postcode.md delete mode 100644 src/content/projects/photos.md delete mode 100644 src/content/projects/platform-game.md delete mode 100644 src/content/projects/reconcile.md delete mode 100644 src/content/projects/sdf-2d.md delete mode 100644 src/content/projects/towers.md delete mode 100644 src/content/projects/vault-link.md rename src/content/{posts => work}/_assets/ad-astra.jpg (100%) rename src/content/{posts => work}/_assets/avoid.jpg (100%) rename src/content/{posts => work}/_assets/backup.png (100%) rename src/content/{posts => work}/_assets/city-simulation.jpg (100%) rename src/content/{posts => work}/_assets/decla-red.jpg (100%) rename src/content/{projects => work}/_assets/declared.jpg (100%) rename src/content/{posts => work}/_assets/fizika.jpg (100%) rename src/content/{posts => work}/_assets/fleeting-garden.jpg (100%) rename src/content/{posts => work}/_assets/forex.jpg (100%) rename src/content/{posts => work}/_assets/frame.jpg (100%) rename src/content/{posts => work}/_assets/great-ai.png (100%) rename src/content/{posts => work}/_assets/leds.jpg (100%) rename src/content/{posts => work}/_assets/my-notes.png (100%) rename src/content/{projects => work}/_assets/nuclear-simulation.jpg (100%) rename src/content/{posts => work}/_assets/perfect-postcode.jpg (100%) rename src/content/{posts => work}/_assets/photo-colour-grader.jpg (100%) rename src/content/{posts => work}/_assets/photos.jpg (100%) rename src/content/{posts => work}/_assets/platform-game.jpg (100%) rename src/content/{posts => work}/_assets/process-simulator-input.jpg (100%) rename src/content/{posts => work}/_assets/process-simulator.jpg (100%) rename src/content/{posts => work}/_assets/reconcile.png (100%) rename src/content/{posts => work}/_assets/sdf2d.jpg (100%) rename src/content/{posts => work}/_assets/towers.jpg (100%) rename src/content/{posts => work}/_assets/vault-link.svg (100%) rename src/content/{posts => work}/ad-astra-attiny85-game-engine.md (68%) rename src/content/{posts => work}/avoid-early-web-game.md (54%) rename src/content/{posts => work}/backup-container-btrfs-borg.md (92%) rename src/content/{posts => work}/city-simulation-unity-traffic.md (70%) rename src/content/{posts => work}/declared-shared-simulation-code.md (77%) rename src/content/{posts => work}/fizika-erettsegi-practice-app.md (80%) rename src/content/{posts => work}/fleeting-garden-webgpu-drawing.md (84%) rename src/content/{posts => work}/foreign-exchange-prediction-experiment.md (72%) rename src/content/{posts => work}/frame-eink-photo-display.md (84%) rename src/content/{posts => work}/graph-editor-javafx-simulation-input.md (67%) rename src/content/{posts => work}/greatai-ai-deployment-api.md (79%) rename src/content/{posts => work}/life-towers-immutable-tries.md (80%) rename src/content/{posts => work}/lights-synchronized-to-music.md (79%) rename src/content/{posts => work}/my-notes-android-markdown-app.md (76%) rename src/content/{posts => work}/nuclear-cooling-simulation.md (74%) rename src/content/{posts => work}/perfect-postcode-rust-property-server.md (88%) rename src/content/{posts => work}/photo-colour-grader.md (70%) rename src/content/{posts => work}/photo-site-generator.md (70%) rename src/content/{posts => work}/platform-game-c-sdl.md (75%) rename src/content/{posts => work}/reconcile-text-3-way-merge.md (83%) rename src/content/{posts => work}/sdf-2d-ray-tracing.md (79%) rename src/content/{posts => work}/vault-link-obsidian-sync.md (93%) diff --git a/astro.config.mjs b/astro.config.mjs index 93a9357..c4c4999 100644 --- a/astro.config.mjs +++ b/astro.config.mjs @@ -7,14 +7,15 @@ import rehypeAutolinkHeadings from 'rehype-autolink-headings'; import rehypeSlug from 'rehype-slug'; import { visit } from 'unist-util-visit'; -// Build a lookup of post slugs to their last modification dates so the sitemap -// can advertise accurate values to crawlers. astro:content isn't -// available inside the config, so we read post frontmatter directly. Our posts -// always use single-line scalar `date:` / `updated:` keys, so a small regex -// extraction is sufficient and intentional. +// Build a lookup of article slugs to their last modification dates so the +// sitemap can advertise accurate values to crawlers. astro:content +// isn't available inside the config, so we read entry frontmatter directly. +// Each entry uses a single-line top-level scalar `date:` key, so a small regex +// extraction is sufficient and intentional. (`updated:` now lives nested under +// `article:`; no entry sets it, so falling back to `date` is correct.) const postsDir = path.resolve( path.dirname(fileURLToPath(import.meta.url)), - 'src/content/posts' + 'src/content/work' ); function extractScalar(frontmatter, key) { diff --git a/src/components/ArticleList.astro b/src/components/ArticleList.astro index d2d3f9e..309ccb0 100644 --- a/src/components/ArticleList.astro +++ b/src/components/ArticleList.astro @@ -5,7 +5,7 @@ import TagList from './TagList.astro'; import { ARTICLE_THUMBNAIL, articlePath, formatDate, formatDateShort } from '../lib/site'; interface Props { - posts: CollectionEntry<'posts'>[]; + posts: CollectionEntry<'work'>[]; showYear?: boolean; tagLimit?: number; timeline?: boolean; @@ -39,7 +39,7 @@ const {

{post.data.description}

- +