{
  "version": "https://jsonfeed.org/version/1.1",
  "title": "whydaf",
  "home_page_url": "https://whydaf.uk/",
  "feed_url": "https://whydaf.uk/feed.json",
  "description": "Memes, photos and posts by Paul Irving.",
  "language": "en-GB",
  "authors": [
    {
      "name": "Paul Irving",
      "url": "https://whydaf.uk/"
    }
  ],
  "items": [
    {
      "id": "https://whydaf.uk/memes/this-is-fine/",
      "url": "https://whydaf.uk/memes/this-is-fine/",
      "title": "This is fine",
      "content_html": "<p>Sample meme committed with the content pipeline. Replace with a real one.</p>",
      "summary": "A solid orange rectangle standing in for a dog in a burning room, captioned this is fine",
      "image": "https://whydaf.uk/_astro/2026-09-23-this-is-fine.B4F_ifnM.png",
      "date_published": "2026-09-23T00:00:00.000Z",
      "date_modified": "2026-09-23T00:00:00.000Z",
      "tags": [
        "devops",
        "this-is-fine"
      ],
      "attachments": [
        {
          "url": "https://whydaf.uk/_astro/2026-09-23-this-is-fine.B4F_ifnM.png",
          "mime_type": "image/png",
          "size_in_bytes": 2789
        }
      ]
    },
    {
      "id": "https://whydaf.uk/photos/sunset/",
      "url": "https://whydaf.uk/photos/sunset/",
      "title": "Sunset",
      "content_html": "<p>Sample photo committed with the content pipeline. The caption comes from this\nsidecar. Replace with a real one.</p>",
      "summary": "A solid warm rectangle standing in for a sunset over the sea",
      "image": "https://whydaf.uk/_astro/2026-09-23-sunset.Bxq5PFVj.jpg",
      "date_published": "2026-09-23T00:00:00.000Z",
      "date_modified": "2026-09-23T00:00:00.000Z",
      "tags": [
        "sample"
      ],
      "attachments": [
        {
          "url": "https://whydaf.uk/_astro/2026-09-23-sunset.Bxq5PFVj.jpg",
          "mime_type": "image/jpeg",
          "size_in_bytes": 173347
        }
      ]
    },
    {
      "id": "https://whydaf.uk/memes/no-date/",
      "url": "https://whydaf.uk/memes/no-date/",
      "title": "No Date",
      "content_html": "<p>No Date</p>",
      "image": "https://whydaf.uk/_astro/no-date.BX02TF9_.png",
      "date_published": "2026-09-23T00:00:00.000Z",
      "date_modified": "2026-09-23T00:00:00.000Z",
      "attachments": [
        {
          "url": "https://whydaf.uk/_astro/no-date.BX02TF9_.png",
          "mime_type": "image/png",
          "size_in_bytes": 1949
        }
      ]
    },
    {
      "id": "https://whydaf.uk/posts/hello/",
      "url": "https://whydaf.uk/posts/hello/",
      "title": "Hello",
      "content_html": "<p>First post. The site exists, the pipeline works, and this is the proof.</p>\n<p>Everything here is dropped into a directory and pushed. That is the whole\npublishing workflow.</p>",
      "summary": "First post. The site exists, the pipeline works, and this is the proof.",
      "date_published": "2026-09-23T00:00:00.000Z",
      "date_modified": "2026-09-23T00:00:00.000Z"
    },
    {
      "id": "https://whydaf.uk/posts/shipping-a-static-site/",
      "url": "https://whydaf.uk/posts/shipping-a-static-site/",
      "title": "Shipping a static site",
      "content_html": "<p>The whole site is plain files built once and served from the edge. No server,\nno database, no client JavaScript.</p>\n<p><img __ASTRO_IMAGE_=\"{&quot;alt&quot;:&quot;A blue panel crossed by a yellow bar: the site’s placeholder illustration&quot;,&quot;src&quot;:&quot;./static-site.png&quot;,&quot;index&quot;:0}\"></p>\n<p>Here is the deploy step, more or less:</p>\n<pre class=\"astro-code astro-code-themes github-light github-dark\" style=\"--shiki-light:#24292e;--shiki-dark:#e1e4e8;--shiki-light-bg:#fff;--shiki-dark-bg:#24292e; overflow-x: auto;\" tabindex=\"0\" data-language=\"bash\"><code><span class=\"line\"><span style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\">npm</span><span style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> ci</span></span>\n<span class=\"line\"><span style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\">npm</span><span style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> run</span><span style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> build</span></span>\n<span class=\"line\"><span style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\">npx</span><span style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> wrangler</span><span style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> pages</span><span style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> deploy</span><span style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> dist</span><span style=\"--shiki-light:#005CC5;--shiki-dark:#79B8FF\"> --project-name</span><span style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> whydaf</span></span></code></pre>\n<p>And the config that makes every page a directory with a trailing slash:</p>\n<pre class=\"astro-code astro-code-themes github-light github-dark\" style=\"--shiki-light:#24292e;--shiki-dark:#e1e4e8;--shiki-light-bg:#fff;--shiki-dark-bg:#24292e; overflow-x: auto;\" tabindex=\"0\" data-language=\"js\"><code><span class=\"line\"><span style=\"--shiki-light:#D73A49;--shiki-dark:#F97583\">export</span><span style=\"--shiki-light:#D73A49;--shiki-dark:#F97583\"> default</span><span style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\"> defineConfig</span><span style=\"--shiki-light:#24292E;--shiki-dark:#E1E4E8\">({</span></span>\n<span class=\"line\"><span style=\"--shiki-light:#24292E;--shiki-dark:#E1E4E8\">  output: </span><span style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\">'static'</span><span style=\"--shiki-light:#24292E;--shiki-dark:#E1E4E8\">,</span></span>\n<span class=\"line\"><span style=\"--shiki-light:#24292E;--shiki-dark:#E1E4E8\">  trailingSlash: </span><span style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\">'always'</span><span style=\"--shiki-light:#24292E;--shiki-dark:#E1E4E8\">,</span></span>\n<span class=\"line\"><span style=\"--shiki-light:#24292E;--shiki-dark:#E1E4E8\">  build: { format: </span><span style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\">'directory'</span><span style=\"--shiki-light:#24292E;--shiki-dark:#E1E4E8\"> },</span></span>\n<span class=\"line\"><span style=\"--shiki-light:#24292E;--shiki-dark:#E1E4E8\">});</span></span></code></pre>\n<p>Inline <code>code</code> stays inline. That is about it.</p>",
      "summary": "The whole site is plain files built once and served from the edge. No server, no database, no client JavaScript.",
      "date_published": "2026-09-22T00:00:00.000Z",
      "date_modified": "2026-09-23T00:00:00.000Z",
      "tags": [
        "devops",
        "astro"
      ]
    },
    {
      "id": "https://whydaf.uk/memes/blink/",
      "url": "https://whydaf.uk/memes/blink/",
      "title": "Blink",
      "content_html": "<p>Sample animated GIF committed with the image pipeline (#14). It is served as\nthe original file, animation intact. Replace with a real one.</p>",
      "summary": "A cream rectangle with a dark bar that blinks open and shut, standing in for an animated meme",
      "image": "https://whydaf.uk/_astro/2026-09-22-blink.26mSFqCt.gif",
      "date_published": "2026-09-22T00:00:00.000Z",
      "date_modified": "2026-09-23T00:00:00.000Z",
      "tags": [
        "sample",
        "animated"
      ],
      "attachments": [
        {
          "url": "https://whydaf.uk/_astro/2026-09-22-blink.26mSFqCt.gif",
          "mime_type": "image/gif",
          "size_in_bytes": 1443
        }
      ]
    },
    {
      "id": "https://whydaf.uk/posts/why-a-dump/",
      "url": "https://whydaf.uk/posts/why-a-dump/",
      "title": "Why a dump",
      "content_html": "<p>Most of what I make is small: a meme, a photo, a note to myself. None of it needs a CMS, and all of it deserves a URL.</p>",
      "summary": "Most of what I make is small: a meme, a photo, a note to myself. None of it needs a CMS, and all of it deserves a URL.",
      "date_published": "2026-09-21T00:00:00.000Z",
      "date_modified": "2026-09-23T00:00:00.000Z"
    }
  ]
}