{
  "version": "https://jsonfeed.org/version/1.1",
  "title": "fLaMEd fury",
  "description": "What&#39;s going on Internet?",
  "home_page_url": "https://flamedfury.com/",
  "feed_url": "https://flamedfury.com/feeds/posts/feed.json",
  "icon": "https://flamedfury.com/favicon.ico",
  "favicon": "https://flamedfury.com/favicon.ico",
  "author": {
    "name": "fLaMEd",
    "url": "https://flamedfury.com/"
  },
  "items": [
    {
        "id": "https://flamedfury.com/posts/re-we-need-a-physical-digital-music-experience/",
        "title": "RE: We Need A Physical-Digital Music Experience",
        "url": "https://flamedfury.com/posts/re-we-need-a-physical-digital-music-experience/",
        "content_html": "<p>What’s going on, Internet? <a href=\\"https://olly.world/we-need-a-physical-digital-music-experience\\" rel=\\"noopener\\">Olly wants a physical-digital music experience</a>: browse the racks at your local record store, chat to the staff, listen to stuff, but instead of bagging the vinyl, pay them for a FLAC download and have the store clip the ticket. I think I’m into it…</p>
<p>While I still buy records physically, I often don’t have the time to get into the local record store weekly to dig through the crates. I purchase my records through a few stores online, often lining up with sales as vinyl is expensive.</p>
<p>When I’m buying a digital album, it’s usually through the artist or band’s website directly, Bandcamp, or Qobuz as a last resort. That way the sale goes through to the artist or band as directly as possible. But it does nothing for a local record store.</p>
<p>Sadly, my favourite local record store recently closed down. See: <a href=\\"https://boilerroom.substack.com/p/a-terrible-horrible-no-good-very\\" rel=\\"noopener\\">RIP to my favourite record store, Flying Out.</a></p>
<p>The book world already has this figured out. <a href=\\"https://libro.fm/\\" rel=\\"noopener\\">Libro.fm</a> lets me link a local book shop, <a href=\\"https://villagebookshop.co.nz/\\" rel=\\"noopener\\">The Village Bookshop</a> in my case, and whenever I purchase an audiobook through <a href=\\"http://libro.fm/\\" rel=\\"noopener\\">Libro.fm</a> they get a slice of the purchase. I get the audiobook I was buying anyway, and a local shop gets supported for existing.</p>
<p>I’m torn though. Buying digital through a record store means the artist gets less, and that’s the whole reason I buy direct. Books are different: very few authors can sell DRM-free copies from their own website unless they’re independent, so something like <a href=\\"http://libro.fm/\\" rel=\\"noopener\\">Libro.fm</a> filling that gap makes sense.</p>
<p>It would be cool to have the physical space where you can still dig through the crates, or flip through the shelves, scan a QR code and go direct to the artist website or Bandcamp. Could the record shop take a cut through the referring QR code? However, that’s just another dollar taken from the band. Physical stores are just so damn expensive these days.</p>
<p>I guess it’s more a case of a service like Bandcamp setting something up like the <a href=\\"http://libro.fm/\\" rel=\\"noopener\\">Libro.fm</a> model: I link my local record store, and every digital album I buy sends a slice their way. The artist still gets their cut, and the store stays in the picture.</p>
<p>Yeah, I don’t know?</p>
<p>Hey, thanks for reading this post in your feed reader! Want to chat? <a href=\\\"mailto:hello@flamedfury.com?subject=RE: RE: We Need A Physical-Digital Music Experience\\\">Reply by email</a> or add me on <a href=\\\"xmpp:flamed@omg.lol\\\">XMPP</a>, or send a <a href=\\\"https://flamedfury.com/posts/re-we-need-a-physical-digital-music-experience/#webmention\\\">webmention</a>. Check out the <a href=\\\"https://flamedfury.com/posts/\\\">posts archive</a> on the website.</p>",
        "date_published": "2026-07-15T10:44:08Z",
        "summary": "Olly wants to buy digital music through his local record store. The book world already has this figured out."
      },{
        "id": "https://flamedfury.com/posts/blaow-blaow-lets-get-rowdy/",
        "title": "BLAOW! BLAOW! LET&#39;S GET ROWDY!",
        "url": "https://flamedfury.com/posts/blaow-blaow-lets-get-rowdy/",
        "content_html": "<p>BLAOW! BLAOW! What’s going on, Internet? This banger of a track, Rowdy (BLAOW!), was introduced to me as part of Les Mills SPRINT release 43. We’re only up to release 44 but have been enjoying this track every other SPRINT class.</p>
<p>I’ve been playing it a bit for the kids, and I love it in the mornings when we get ready for a ROWDY drop off.</p>
  <div class=\\"youtube-embed\\"> <lite-youtube videoid=\\"agbCjaORPqU\\" style=\\"background-image: url('https://i.ytimg.com/vi/agbCjaORPqU/hqdefault.jpg');\\">
  <button type=\\"button\\" class=\\"lty-playbtn\\">
    <span class=\\"lyt-visually-hidden\\">Hedex ft. Eksman - Rowdy (BLAOW!)</span>
  </button>
</lite-youtube></div>
<p>Hey, thanks for reading this post in your feed reader! Want to chat? <a href=\\\"mailto:hello@flamedfury.com?subject=RE: BLAOW! BLAOW! LET&#39;S GET ROWDY!\\\">Reply by email</a> or add me on <a href=\\\"xmpp:flamed@omg.lol\\\">XMPP</a>, or send a <a href=\\\"https://flamedfury.com/posts/blaow-blaow-lets-get-rowdy/#webmention\\\">webmention</a>. Check out the <a href=\\\"https://flamedfury.com/posts/\\\">posts archive</a> on the website.</p>",
        "date_published": "2026-07-15T09:53:00Z",
        "summary": "When a BANGER gets stuck in your head!"
      },{
        "id": "https://flamedfury.com/posts/dinosaur-discovery-returns/",
        "title": "Dinosaur Discovery Returns",
        "url": "https://flamedfury.com/posts/dinosaur-discovery-returns/",
        "content_html": "<p>What’s going on, Internet? Last year we <a href=\\"https://flamedfury.com/posts/dinosaur-discovery-at-auckland-zoo/\\">discovered the dinosaurs at Auckland Zoo</a>, and this year we went back for round two. They’ve added some new dinosaurs to the track this year, so it was well worth the revisit.</p>
<p>We made the trip with my brother and his kids again, and this year my parents were up for the week so it was a great family night out. The kids are all a year older, we stayed out later and they had a great time. My youngest who is two years old now was a bit scared, but was able to put on a brave face walking around with daddy.</p>
<p>I expect many more visits to the dinosaurs during the day as we visit the zoo during the upcoming weekends. I might never ever get to the NZ birds section (I have been trying with each zoo visit, lol).</p>
<p>Enjoy the photos.</p>
<is-land on:visible=\\"\\">
  <div class=\\"gallery | grid mt-l-xl gutter-xs\\" role=\\"list\\"><dialog class=\\"flow gallery-dialog modal1\\">
        <div class=\\"cluster justify-end gutter-s\\">
          <button data-close=\\"\\" class=\\"button\\" autofocus=\\"\\">Close</button>
        </div>
        <div class=\\"flow text-center\\"><picture slot=\\"image\\">  <source type=\\"image/webp\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-1-480w.webp 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-1-800w.webp 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-1-1200w.webp 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" />
  <source type=\\"image/jpeg\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-1-480w.jpeg 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-1-800w.jpeg 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-1-1200w.jpeg 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" /><img src=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-1-1200w.jpeg\\" width=\\"1200\\" height=\\"900\\" alt=\\"A long-necked sauropod with a ridged sail back stands bathed in deep blue light with hot red accents, roped off among ferns under a night sky.\\" loading=\\"lazy\\" decoding=\\"async\\" eleventy:ignore=\\"\\" /></picture></div>
        <div class=\\"cluster justify-between gutter-s\\">
          <button data-nav=\\"prev\\" class=\\"button\\" aria-label=\\"Previous image\\">
            <span aria-hidden=\\"true\\">←</span> Previous
          </button>
          <span class=\\"text-step-min-1\\" aria-live=\\"polite\\">
            1 / 18
          </span>
          <button data-nav=\\"next\\" class=\\"button\\" aria-label=\\"Next image\\">
            Next <span aria-hidden=\\"true\\">→</span>
          </button>
        </div>
      </dialog>
      <button class=\\"gallery-thumb\\" data-index=\\"1\\"><picture slot=\\"image\\">  <source type=\\"image/webp\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-1-480w.webp 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-1-800w.webp 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-1-1200w.webp 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" />
  <source type=\\"image/jpeg\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-1-480w.jpeg 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-1-800w.jpeg 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-1-1200w.jpeg 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" /><img src=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-1-1200w.jpeg\\" width=\\"1200\\" height=\\"900\\" alt=\\"A long-necked sauropod with a ridged sail back stands bathed in deep blue light with hot red accents, roped off among ferns under a night sky.\\" loading=\\"lazy\\" decoding=\\"async\\" eleventy:ignore=\\"\\" /></picture></button><dialog class=\\"flow gallery-dialog modal2\\">
        <div class=\\"cluster justify-end gutter-s\\">
          <button data-close=\\"\\" class=\\"button\\" autofocus=\\"\\">Close</button>
        </div>
        <div class=\\"flow text-center\\"><picture slot=\\"image\\">  <source type=\\"image/webp\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-2-480w.webp 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-2-800w.webp 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-2-1200w.webp 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" />
  <source type=\\"image/jpeg\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-2-480w.jpeg 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-2-800w.jpeg 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-2-1200w.jpeg 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" /><img src=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-2-1200w.jpeg\\" width=\\"1200\\" height=\\"900\\" alt=\\"A Pachycephalosaurus with a spiked dome head glows vivid green among ferns and bushes, its snout catching a wash of blue light.\\" loading=\\"lazy\\" decoding=\\"async\\" eleventy:ignore=\\"\\" /></picture></div>
        <div class=\\"cluster justify-between gutter-s\\">
          <button data-nav=\\"prev\\" class=\\"button\\" aria-label=\\"Previous image\\">
            <span aria-hidden=\\"true\\">←</span> Previous
          </button>
          <span class=\\"text-step-min-1\\" aria-live=\\"polite\\">
            2 / 18
          </span>
          <button data-nav=\\"next\\" class=\\"button\\" aria-label=\\"Next image\\">
            Next <span aria-hidden=\\"true\\">→</span>
          </button>
        </div>
      </dialog>
      <button class=\\"gallery-thumb\\" data-index=\\"2\\"><picture slot=\\"image\\">  <source type=\\"image/webp\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-2-480w.webp 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-2-800w.webp 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-2-1200w.webp 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" />
  <source type=\\"image/jpeg\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-2-480w.jpeg 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-2-800w.jpeg 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-2-1200w.jpeg 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" /><img src=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-2-1200w.jpeg\\" width=\\"1200\\" height=\\"900\\" alt=\\"A Pachycephalosaurus with a spiked dome head glows vivid green among ferns and bushes, its snout catching a wash of blue light.\\" loading=\\"lazy\\" decoding=\\"async\\" eleventy:ignore=\\"\\" /></picture></button><dialog class=\\"flow gallery-dialog modal3\\">
        <div class=\\"cluster justify-end gutter-s\\">
          <button data-close=\\"\\" class=\\"button\\" autofocus=\\"\\">Close</button>
        </div>
        <div class=\\"flow text-center\\"><picture slot=\\"image\\">  <source type=\\"image/webp\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-3-480w.webp 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-3-800w.webp 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-3-1200w.webp 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" />
  <source type=\\"image/jpeg\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-3-480w.jpeg 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-3-800w.jpeg 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-3-1200w.jpeg 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" /><img src=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-3-1200w.jpeg\\" width=\\"1200\\" height=\\"900\\" alt=\\"An armoured Ankylosaurus lit red from the front and green along its spiked back, standing on bark mulch in front of a wooden picket fence.\\" loading=\\"lazy\\" decoding=\\"async\\" eleventy:ignore=\\"\\" /></picture></div>
        <div class=\\"cluster justify-between gutter-s\\">
          <button data-nav=\\"prev\\" class=\\"button\\" aria-label=\\"Previous image\\">
            <span aria-hidden=\\"true\\">←</span> Previous
          </button>
          <span class=\\"text-step-min-1\\" aria-live=\\"polite\\">
            3 / 18
          </span>
          <button data-nav=\\"next\\" class=\\"button\\" aria-label=\\"Next image\\">
            Next <span aria-hidden=\\"true\\">→</span>
          </button>
        </div>
      </dialog>
      <button class=\\"gallery-thumb\\" data-index=\\"3\\"><picture slot=\\"image\\">  <source type=\\"image/webp\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-3-480w.webp 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-3-800w.webp 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-3-1200w.webp 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" />
  <source type=\\"image/jpeg\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-3-480w.jpeg 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-3-800w.jpeg 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-3-1200w.jpeg 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" /><img src=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-3-1200w.jpeg\\" width=\\"1200\\" height=\\"900\\" alt=\\"An armoured Ankylosaurus lit red from the front and green along its spiked back, standing on bark mulch in front of a wooden picket fence.\\" loading=\\"lazy\\" decoding=\\"async\\" eleventy:ignore=\\"\\" /></picture></button><dialog class=\\"flow gallery-dialog modal4\\">
        <div class=\\"cluster justify-end gutter-s\\">
          <button data-close=\\"\\" class=\\"button\\" autofocus=\\"\\">Close</button>
        </div>
        <div class=\\"flow text-center\\"><picture slot=\\"image\\">  <source type=\\"image/webp\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-4-480w.webp 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-4-800w.webp 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-4-1200w.webp 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" />
  <source type=\\"image/jpeg\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-4-480w.jpeg 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-4-800w.jpeg 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-4-1200w.jpeg 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" /><img src=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-4-1200w.jpeg\\" width=\\"1200\\" height=\\"900\\" alt=\\"A Styracosaurus with long frill spikes and a nose horn, painted in green and red light, standing beside a boulder amid glowing foliage.\\" loading=\\"lazy\\" decoding=\\"async\\" eleventy:ignore=\\"\\" /></picture></div>
        <div class=\\"cluster justify-between gutter-s\\">
          <button data-nav=\\"prev\\" class=\\"button\\" aria-label=\\"Previous image\\">
            <span aria-hidden=\\"true\\">←</span> Previous
          </button>
          <span class=\\"text-step-min-1\\" aria-live=\\"polite\\">
            4 / 18
          </span>
          <button data-nav=\\"next\\" class=\\"button\\" aria-label=\\"Next image\\">
            Next <span aria-hidden=\\"true\\">→</span>
          </button>
        </div>
      </dialog>
      <button class=\\"gallery-thumb\\" data-index=\\"4\\"><picture slot=\\"image\\">  <source type=\\"image/webp\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-4-480w.webp 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-4-800w.webp 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-4-1200w.webp 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" />
  <source type=\\"image/jpeg\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-4-480w.jpeg 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-4-800w.jpeg 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-4-1200w.jpeg 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" /><img src=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-4-1200w.jpeg\\" width=\\"1200\\" height=\\"900\\" alt=\\"A Styracosaurus with long frill spikes and a nose horn, painted in green and red light, standing beside a boulder amid glowing foliage.\\" loading=\\"lazy\\" decoding=\\"async\\" eleventy:ignore=\\"\\" /></picture></button><dialog class=\\"flow gallery-dialog modal5\\">
        <div class=\\"cluster justify-end gutter-s\\">
          <button data-close=\\"\\" class=\\"button\\" autofocus=\\"\\">Close</button>
        </div>
        <div class=\\"flow text-center\\"><picture slot=\\"image\\">  <source type=\\"image/webp\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-5-480w.webp 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-5-800w.webp 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-5-1200w.webp 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" />
  <source type=\\"image/jpeg\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-5-480w.jpeg 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-5-800w.jpeg 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-5-1200w.jpeg 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" /><img src=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-5-1200w.jpeg\\" width=\\"1200\\" height=\\"900\\" alt=\\"Two towering long-necked sauropods against the night sky, one lit purple and blue, the other bright lime green, with mist drifting between them.\\" loading=\\"lazy\\" decoding=\\"async\\" eleventy:ignore=\\"\\" /></picture></div>
        <div class=\\"cluster justify-between gutter-s\\">
          <button data-nav=\\"prev\\" class=\\"button\\" aria-label=\\"Previous image\\">
            <span aria-hidden=\\"true\\">←</span> Previous
          </button>
          <span class=\\"text-step-min-1\\" aria-live=\\"polite\\">
            5 / 18
          </span>
          <button data-nav=\\"next\\" class=\\"button\\" aria-label=\\"Next image\\">
            Next <span aria-hidden=\\"true\\">→</span>
          </button>
        </div>
      </dialog>
      <button class=\\"gallery-thumb\\" data-index=\\"5\\"><picture slot=\\"image\\">  <source type=\\"image/webp\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-5-480w.webp 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-5-800w.webp 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-5-1200w.webp 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" />
  <source type=\\"image/jpeg\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-5-480w.jpeg 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-5-800w.jpeg 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-5-1200w.jpeg 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" /><img src=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-5-1200w.jpeg\\" width=\\"1200\\" height=\\"900\\" alt=\\"Two towering long-necked sauropods against the night sky, one lit purple and blue, the other bright lime green, with mist drifting between them.\\" loading=\\"lazy\\" decoding=\\"async\\" eleventy:ignore=\\"\\" /></picture></button><dialog class=\\"flow gallery-dialog modal6\\">
        <div class=\\"cluster justify-end gutter-s\\">
          <button data-close=\\"\\" class=\\"button\\" autofocus=\\"\\">Close</button>
        </div>
        <div class=\\"flow text-center\\"><picture slot=\\"image\\">  <source type=\\"image/webp\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-6-480w.webp 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-6-800w.webp 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-6-1200w.webp 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" />
  <source type=\\"image/jpeg\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-6-480w.jpeg 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-6-800w.jpeg 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-6-1200w.jpeg 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" /><img src=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-6-1200w.jpeg\\" width=\\"1200\\" height=\\"900\\" alt=\\"A large horned theropod stalks past a wall casting a dramatic shadow, lit warm orange with green underlight against the deep blue evening.\\" loading=\\"lazy\\" decoding=\\"async\\" eleventy:ignore=\\"\\" /></picture></div>
        <div class=\\"cluster justify-between gutter-s\\">
          <button data-nav=\\"prev\\" class=\\"button\\" aria-label=\\"Previous image\\">
            <span aria-hidden=\\"true\\">←</span> Previous
          </button>
          <span class=\\"text-step-min-1\\" aria-live=\\"polite\\">
            6 / 18
          </span>
          <button data-nav=\\"next\\" class=\\"button\\" aria-label=\\"Next image\\">
            Next <span aria-hidden=\\"true\\">→</span>
          </button>
        </div>
      </dialog>
      <button class=\\"gallery-thumb\\" data-index=\\"6\\"><picture slot=\\"image\\">  <source type=\\"image/webp\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-6-480w.webp 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-6-800w.webp 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-6-1200w.webp 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" />
  <source type=\\"image/jpeg\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-6-480w.jpeg 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-6-800w.jpeg 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-6-1200w.jpeg 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" /><img src=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-6-1200w.jpeg\\" width=\\"1200\\" height=\\"900\\" alt=\\"A large horned theropod stalks past a wall casting a dramatic shadow, lit warm orange with green underlight against the deep blue evening.\\" loading=\\"lazy\\" decoding=\\"async\\" eleventy:ignore=\\"\\" /></picture></button><dialog class=\\"flow gallery-dialog modal7\\">
        <div class=\\"cluster justify-end gutter-s\\">
          <button data-close=\\"\\" class=\\"button\\" autofocus=\\"\\">Close</button>
        </div>
        <div class=\\"flow text-center\\"><picture slot=\\"image\\">  <source type=\\"image/webp\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-7-480w.webp 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-7-800w.webp 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-7-1200w.webp 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" />
  <source type=\\"image/jpeg\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-7-480w.jpeg 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-7-800w.jpeg 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-7-1200w.jpeg 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" /><img src=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-7-1200w.jpeg\\" width=\\"1200\\" height=\\"900\\" alt=\\"A pair of red-crested Dilophosaurus mid-stride among palms and grasses, the closest with its toothy jaw open and water dribbling from its mouth.\\" loading=\\"lazy\\" decoding=\\"async\\" eleventy:ignore=\\"\\" /></picture></div>
        <div class=\\"cluster justify-between gutter-s\\">
          <button data-nav=\\"prev\\" class=\\"button\\" aria-label=\\"Previous image\\">
            <span aria-hidden=\\"true\\">←</span> Previous
          </button>
          <span class=\\"text-step-min-1\\" aria-live=\\"polite\\">
            7 / 18
          </span>
          <button data-nav=\\"next\\" class=\\"button\\" aria-label=\\"Next image\\">
            Next <span aria-hidden=\\"true\\">→</span>
          </button>
        </div>
      </dialog>
      <button class=\\"gallery-thumb\\" data-index=\\"7\\"><picture slot=\\"image\\">  <source type=\\"image/webp\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-7-480w.webp 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-7-800w.webp 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-7-1200w.webp 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" />
  <source type=\\"image/jpeg\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-7-480w.jpeg 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-7-800w.jpeg 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-7-1200w.jpeg 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" /><img src=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-7-1200w.jpeg\\" width=\\"1200\\" height=\\"900\\" alt=\\"A pair of red-crested Dilophosaurus mid-stride among palms and grasses, the closest with its toothy jaw open and water dribbling from its mouth.\\" loading=\\"lazy\\" decoding=\\"async\\" eleventy:ignore=\\"\\" /></picture></button><dialog class=\\"flow gallery-dialog modal8\\">
        <div class=\\"cluster justify-end gutter-s\\">
          <button data-close=\\"\\" class=\\"button\\" autofocus=\\"\\">Close</button>
        </div>
        <div class=\\"flow text-center\\"><picture slot=\\"image\\">  <source type=\\"image/webp\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-8-480w.webp 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-8-800w.webp 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-8-1200w.webp 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" />
  <source type=\\"image/jpeg\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-8-480w.jpeg 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-8-800w.jpeg 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-8-1200w.jpeg 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" /><img src=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-8-1200w.jpeg\\" width=\\"1200\\" height=\\"900\\" alt=\\"A striped tyrannosaur lit hot pink and red faces the camera through tussock grass, a blue-lit log pointing skyward behind it.\\" loading=\\"lazy\\" decoding=\\"async\\" eleventy:ignore=\\"\\" /></picture></div>
        <div class=\\"cluster justify-between gutter-s\\">
          <button data-nav=\\"prev\\" class=\\"button\\" aria-label=\\"Previous image\\">
            <span aria-hidden=\\"true\\">←</span> Previous
          </button>
          <span class=\\"text-step-min-1\\" aria-live=\\"polite\\">
            8 / 18
          </span>
          <button data-nav=\\"next\\" class=\\"button\\" aria-label=\\"Next image\\">
            Next <span aria-hidden=\\"true\\">→</span>
          </button>
        </div>
      </dialog>
      <button class=\\"gallery-thumb\\" data-index=\\"8\\"><picture slot=\\"image\\">  <source type=\\"image/webp\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-8-480w.webp 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-8-800w.webp 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-8-1200w.webp 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" />
  <source type=\\"image/jpeg\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-8-480w.jpeg 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-8-800w.jpeg 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-8-1200w.jpeg 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" /><img src=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-8-1200w.jpeg\\" width=\\"1200\\" height=\\"900\\" alt=\\"A striped tyrannosaur lit hot pink and red faces the camera through tussock grass, a blue-lit log pointing skyward behind it.\\" loading=\\"lazy\\" decoding=\\"async\\" eleventy:ignore=\\"\\" /></picture></button><dialog class=\\"flow gallery-dialog modal9\\">
        <div class=\\"cluster justify-end gutter-s\\">
          <button data-close=\\"\\" class=\\"button\\" autofocus=\\"\\">Close</button>
        </div>
        <div class=\\"flow text-center\\"><picture slot=\\"image\\">  <source type=\\"image/webp\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-9-480w.webp 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-9-800w.webp 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-9-1200w.webp 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" />
  <source type=\\"image/jpeg\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-9-480w.jpeg 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-9-800w.jpeg 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-9-1200w.jpeg 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" /><img src=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-9-1200w.jpeg\\" width=\\"1200\\" height=\\"900\\" alt=\\"A Carnotaurus with horns above its eyes glows green in the mist beside a palm, mouth open in the darkness.\\" loading=\\"lazy\\" decoding=\\"async\\" eleventy:ignore=\\"\\" /></picture></div>
        <div class=\\"cluster justify-between gutter-s\\">
          <button data-nav=\\"prev\\" class=\\"button\\" aria-label=\\"Previous image\\">
            <span aria-hidden=\\"true\\">←</span> Previous
          </button>
          <span class=\\"text-step-min-1\\" aria-live=\\"polite\\">
            9 / 18
          </span>
          <button data-nav=\\"next\\" class=\\"button\\" aria-label=\\"Next image\\">
            Next <span aria-hidden=\\"true\\">→</span>
          </button>
        </div>
      </dialog>
      <button class=\\"gallery-thumb\\" data-index=\\"9\\"><picture slot=\\"image\\">  <source type=\\"image/webp\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-9-480w.webp 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-9-800w.webp 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-9-1200w.webp 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" />
  <source type=\\"image/jpeg\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-9-480w.jpeg 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-9-800w.jpeg 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-9-1200w.jpeg 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" /><img src=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-9-1200w.jpeg\\" width=\\"1200\\" height=\\"900\\" alt=\\"A Carnotaurus with horns above its eyes glows green in the mist beside a palm, mouth open in the darkness.\\" loading=\\"lazy\\" decoding=\\"async\\" eleventy:ignore=\\"\\" /></picture></button><dialog class=\\"flow gallery-dialog modal10\\">
        <div class=\\"cluster justify-end gutter-s\\">
          <button data-close=\\"\\" class=\\"button\\" autofocus=\\"\\">Close</button>
        </div>
        <div class=\\"flow text-center\\"><picture slot=\\"image\\">  <source type=\\"image/webp\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-10-480w.webp 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-10-800w.webp 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-10-1200w.webp 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" />
  <source type=\\"image/jpeg\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-10-480w.jpeg 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-10-800w.jpeg 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-10-1200w.jpeg 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" /><img src=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-10-1200w.jpeg\\" width=\\"1200\\" height=\\"900\\" alt=\\"Two baby raptors peek out from a den of dried palm fronds and grasses, all bathed in warm amber light.\\" loading=\\"lazy\\" decoding=\\"async\\" eleventy:ignore=\\"\\" /></picture></div>
        <div class=\\"cluster justify-between gutter-s\\">
          <button data-nav=\\"prev\\" class=\\"button\\" aria-label=\\"Previous image\\">
            <span aria-hidden=\\"true\\">←</span> Previous
          </button>
          <span class=\\"text-step-min-1\\" aria-live=\\"polite\\">
            10 / 18
          </span>
          <button data-nav=\\"next\\" class=\\"button\\" aria-label=\\"Next image\\">
            Next <span aria-hidden=\\"true\\">→</span>
          </button>
        </div>
      </dialog>
      <button class=\\"gallery-thumb\\" data-index=\\"10\\"><picture slot=\\"image\\">  <source type=\\"image/webp\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-10-480w.webp 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-10-800w.webp 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-10-1200w.webp 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" />
  <source type=\\"image/jpeg\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-10-480w.jpeg 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-10-800w.jpeg 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-10-1200w.jpeg 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" /><img src=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-10-1200w.jpeg\\" width=\\"1200\\" height=\\"900\\" alt=\\"Two baby raptors peek out from a den of dried palm fronds and grasses, all bathed in warm amber light.\\" loading=\\"lazy\\" decoding=\\"async\\" eleventy:ignore=\\"\\" /></picture></button><dialog class=\\"flow gallery-dialog modal11\\">
        <div class=\\"cluster justify-end gutter-s\\">
          <button data-close=\\"\\" class=\\"button\\" autofocus=\\"\\">Close</button>
        </div>
        <div class=\\"flow text-center\\"><picture slot=\\"image\\">  <source type=\\"image/webp\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-11-480w.webp 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-11-800w.webp 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-11-1200w.webp 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" />
  <source type=\\"image/jpeg\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-11-480w.jpeg 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-11-800w.jpeg 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-11-1200w.jpeg 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" /><img src=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-11-1200w.jpeg\\" width=\\"1200\\" height=\\"898\\" alt=\\"A baby tyrannosaur pokes its head from a thicket of ferns and palms saturated in magenta and purple light, with a second hatchling below and a skeleton model behind.\\" loading=\\"lazy\\" decoding=\\"async\\" eleventy:ignore=\\"\\" /></picture></div>
        <div class=\\"cluster justify-between gutter-s\\">
          <button data-nav=\\"prev\\" class=\\"button\\" aria-label=\\"Previous image\\">
            <span aria-hidden=\\"true\\">←</span> Previous
          </button>
          <span class=\\"text-step-min-1\\" aria-live=\\"polite\\">
            11 / 18
          </span>
          <button data-nav=\\"next\\" class=\\"button\\" aria-label=\\"Next image\\">
            Next <span aria-hidden=\\"true\\">→</span>
          </button>
        </div>
      </dialog>
      <button class=\\"gallery-thumb\\" data-index=\\"11\\"><picture slot=\\"image\\">  <source type=\\"image/webp\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-11-480w.webp 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-11-800w.webp 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-11-1200w.webp 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" />
  <source type=\\"image/jpeg\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-11-480w.jpeg 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-11-800w.jpeg 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-11-1200w.jpeg 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" /><img src=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-11-1200w.jpeg\\" width=\\"1200\\" height=\\"898\\" alt=\\"A baby tyrannosaur pokes its head from a thicket of ferns and palms saturated in magenta and purple light, with a second hatchling below and a skeleton model behind.\\" loading=\\"lazy\\" decoding=\\"async\\" eleventy:ignore=\\"\\" /></picture></button><dialog class=\\"flow gallery-dialog modal12\\">
        <div class=\\"cluster justify-end gutter-s\\">
          <button data-close=\\"\\" class=\\"button\\" autofocus=\\"\\">Close</button>
        </div>
        <div class=\\"flow text-center\\"><picture slot=\\"image\\">  <source type=\\"image/webp\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-12-480w.webp 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-12-800w.webp 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-12-1200w.webp 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" />
  <source type=\\"image/jpeg\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-12-480w.jpeg 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-12-800w.jpeg 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-12-1200w.jpeg 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" /><img src=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-12-1200w.jpeg\\" width=\\"1200\\" height=\\"900\\" alt=\\"A huge T. rex in profile, its head and jaws lit fiery red while its body glows teal green, framed by dark trees and tussock.\\" loading=\\"lazy\\" decoding=\\"async\\" eleventy:ignore=\\"\\" /></picture></div>
        <div class=\\"cluster justify-between gutter-s\\">
          <button data-nav=\\"prev\\" class=\\"button\\" aria-label=\\"Previous image\\">
            <span aria-hidden=\\"true\\">←</span> Previous
          </button>
          <span class=\\"text-step-min-1\\" aria-live=\\"polite\\">
            12 / 18
          </span>
          <button data-nav=\\"next\\" class=\\"button\\" aria-label=\\"Next image\\">
            Next <span aria-hidden=\\"true\\">→</span>
          </button>
        </div>
      </dialog>
      <button class=\\"gallery-thumb\\" data-index=\\"12\\"><picture slot=\\"image\\">  <source type=\\"image/webp\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-12-480w.webp 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-12-800w.webp 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-12-1200w.webp 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" />
  <source type=\\"image/jpeg\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-12-480w.jpeg 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-12-800w.jpeg 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-12-1200w.jpeg 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" /><img src=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-12-1200w.jpeg\\" width=\\"1200\\" height=\\"900\\" alt=\\"A huge T. rex in profile, its head and jaws lit fiery red while its body glows teal green, framed by dark trees and tussock.\\" loading=\\"lazy\\" decoding=\\"async\\" eleventy:ignore=\\"\\" /></picture></button><dialog class=\\"flow gallery-dialog modal13\\">
        <div class=\\"cluster justify-end gutter-s\\">
          <button data-close=\\"\\" class=\\"button\\" autofocus=\\"\\">Close</button>
        </div>
        <div class=\\"flow text-center\\"><picture slot=\\"image\\">  <source type=\\"image/webp\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-13-480w.webp 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-13-800w.webp 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-13-1200w.webp 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" />
  <source type=\\"image/jpeg\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-13-480w.jpeg 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-13-800w.jpeg 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-13-1200w.jpeg 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" /><img src=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-13-1200w.jpeg\\" width=\\"1200\\" height=\\"900\\" alt=\\"A bright green striped theropod prowls past a glowing rock, surrounded by purple-lit mulch and grasses with a violet lamp shining at right.\\" loading=\\"lazy\\" decoding=\\"async\\" eleventy:ignore=\\"\\" /></picture></div>
        <div class=\\"cluster justify-between gutter-s\\">
          <button data-nav=\\"prev\\" class=\\"button\\" aria-label=\\"Previous image\\">
            <span aria-hidden=\\"true\\">←</span> Previous
          </button>
          <span class=\\"text-step-min-1\\" aria-live=\\"polite\\">
            13 / 18
          </span>
          <button data-nav=\\"next\\" class=\\"button\\" aria-label=\\"Next image\\">
            Next <span aria-hidden=\\"true\\">→</span>
          </button>
        </div>
      </dialog>
      <button class=\\"gallery-thumb\\" data-index=\\"13\\"><picture slot=\\"image\\">  <source type=\\"image/webp\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-13-480w.webp 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-13-800w.webp 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-13-1200w.webp 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" />
  <source type=\\"image/jpeg\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-13-480w.jpeg 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-13-800w.jpeg 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-13-1200w.jpeg 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" /><img src=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-13-1200w.jpeg\\" width=\\"1200\\" height=\\"900\\" alt=\\"A bright green striped theropod prowls past a glowing rock, surrounded by purple-lit mulch and grasses with a violet lamp shining at right.\\" loading=\\"lazy\\" decoding=\\"async\\" eleventy:ignore=\\"\\" /></picture></button><dialog class=\\"flow gallery-dialog modal14\\">
        <div class=\\"cluster justify-end gutter-s\\">
          <button data-close=\\"\\" class=\\"button\\" autofocus=\\"\\">Close</button>
        </div>
        <div class=\\"flow text-center\\"><picture slot=\\"image\\">  <source type=\\"image/webp\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-14-480w.webp 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-14-800w.webp 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-14-1200w.webp 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" />
  <source type=\\"image/jpeg\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-14-480w.jpeg 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-14-800w.jpeg 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-14-1200w.jpeg 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" /><img src=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-14-1200w.jpeg\\" width=\\"1200\\" height=\\"900\\" alt=\\"An ostrich-like Gallimimus perched on blue and pink lit rocks, with mist, a red-lit marquee, and another dinosaur snout in the background.\\" loading=\\"lazy\\" decoding=\\"async\\" eleventy:ignore=\\"\\" /></picture></div>
        <div class=\\"cluster justify-between gutter-s\\">
          <button data-nav=\\"prev\\" class=\\"button\\" aria-label=\\"Previous image\\">
            <span aria-hidden=\\"true\\">←</span> Previous
          </button>
          <span class=\\"text-step-min-1\\" aria-live=\\"polite\\">
            14 / 18
          </span>
          <button data-nav=\\"next\\" class=\\"button\\" aria-label=\\"Next image\\">
            Next <span aria-hidden=\\"true\\">→</span>
          </button>
        </div>
      </dialog>
      <button class=\\"gallery-thumb\\" data-index=\\"14\\"><picture slot=\\"image\\">  <source type=\\"image/webp\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-14-480w.webp 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-14-800w.webp 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-14-1200w.webp 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" />
  <source type=\\"image/jpeg\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-14-480w.jpeg 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-14-800w.jpeg 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-14-1200w.jpeg 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" /><img src=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-14-1200w.jpeg\\" width=\\"1200\\" height=\\"900\\" alt=\\"An ostrich-like Gallimimus perched on blue and pink lit rocks, with mist, a red-lit marquee, and another dinosaur snout in the background.\\" loading=\\"lazy\\" decoding=\\"async\\" eleventy:ignore=\\"\\" /></picture></button><dialog class=\\"flow gallery-dialog modal15\\">
        <div class=\\"cluster justify-end gutter-s\\">
          <button data-close=\\"\\" class=\\"button\\" autofocus=\\"\\">Close</button>
        </div>
        <div class=\\"flow text-center\\"><picture slot=\\"image\\">  <source type=\\"image/webp\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-15-480w.webp 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-15-800w.webp 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-15-1200w.webp 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" />
  <source type=\\"image/jpeg\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-15-480w.jpeg 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-15-800w.jpeg 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-15-1200w.jpeg 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" /><img src=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-15-1200w.jpeg\\" width=\\"1200\\" height=\\"900\\" alt=\\"A feathered raptor with winged arms and a shaggy coat, lit lime green and hot purple, mid-stride over grasses against dark trees.\\" loading=\\"lazy\\" decoding=\\"async\\" eleventy:ignore=\\"\\" /></picture></div>
        <div class=\\"cluster justify-between gutter-s\\">
          <button data-nav=\\"prev\\" class=\\"button\\" aria-label=\\"Previous image\\">
            <span aria-hidden=\\"true\\">←</span> Previous
          </button>
          <span class=\\"text-step-min-1\\" aria-live=\\"polite\\">
            15 / 18
          </span>
          <button data-nav=\\"next\\" class=\\"button\\" aria-label=\\"Next image\\">
            Next <span aria-hidden=\\"true\\">→</span>
          </button>
        </div>
      </dialog>
      <button class=\\"gallery-thumb\\" data-index=\\"15\\"><picture slot=\\"image\\">  <source type=\\"image/webp\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-15-480w.webp 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-15-800w.webp 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-15-1200w.webp 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" />
  <source type=\\"image/jpeg\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-15-480w.jpeg 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-15-800w.jpeg 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-15-1200w.jpeg 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" /><img src=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-15-1200w.jpeg\\" width=\\"1200\\" height=\\"900\\" alt=\\"A feathered raptor with winged arms and a shaggy coat, lit lime green and hot purple, mid-stride over grasses against dark trees.\\" loading=\\"lazy\\" decoding=\\"async\\" eleventy:ignore=\\"\\" /></picture></button><dialog class=\\"flow gallery-dialog modal16\\">
        <div class=\\"cluster justify-end gutter-s\\">
          <button data-close=\\"\\" class=\\"button\\" autofocus=\\"\\">Close</button>
        </div>
        <div class=\\"flow text-center\\"><picture slot=\\"image\\">  <source type=\\"image/webp\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-16-480w.webp 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-16-800w.webp 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-16-1200w.webp 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" />
  <source type=\\"image/jpeg\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-16-480w.jpeg 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-16-800w.jpeg 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-16-1200w.jpeg 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" /><img src=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-16-1200w.jpeg\\" width=\\"1200\\" height=\\"900\\" alt=\\"A Parasaurolophus and its baby glow orange and pink inside a rope-fenced enclosure beneath overhanging branches.\\" loading=\\"lazy\\" decoding=\\"async\\" eleventy:ignore=\\"\\" /></picture></div>
        <div class=\\"cluster justify-between gutter-s\\">
          <button data-nav=\\"prev\\" class=\\"button\\" aria-label=\\"Previous image\\">
            <span aria-hidden=\\"true\\">←</span> Previous
          </button>
          <span class=\\"text-step-min-1\\" aria-live=\\"polite\\">
            16 / 18
          </span>
          <button data-nav=\\"next\\" class=\\"button\\" aria-label=\\"Next image\\">
            Next <span aria-hidden=\\"true\\">→</span>
          </button>
        </div>
      </dialog>
      <button class=\\"gallery-thumb\\" data-index=\\"16\\"><picture slot=\\"image\\">  <source type=\\"image/webp\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-16-480w.webp 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-16-800w.webp 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-16-1200w.webp 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" />
  <source type=\\"image/jpeg\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-16-480w.jpeg 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-16-800w.jpeg 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-16-1200w.jpeg 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" /><img src=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-16-1200w.jpeg\\" width=\\"1200\\" height=\\"900\\" alt=\\"A Parasaurolophus and its baby glow orange and pink inside a rope-fenced enclosure beneath overhanging branches.\\" loading=\\"lazy\\" decoding=\\"async\\" eleventy:ignore=\\"\\" /></picture></button><dialog class=\\"flow gallery-dialog modal17\\">
        <div class=\\"cluster justify-end gutter-s\\">
          <button data-close=\\"\\" class=\\"button\\" autofocus=\\"\\">Close</button>
        </div>
        <div class=\\"flow text-center\\"><picture slot=\\"image\\">  <source type=\\"image/webp\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-17-480w.webp 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-17-800w.webp 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-17-1200w.webp 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" />
  <source type=\\"image/jpeg\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-17-480w.jpeg 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-17-800w.jpeg 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-17-1200w.jpeg 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" /><img src=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-17-1200w.jpeg\\" width=\\"1200\\" height=\\"900\\" alt=\\"A velociraptor drenched in red light rears between tree trunks, claws out, with a second raptor lunging at a tree behind, all against blue-lit foliage.\\" loading=\\"lazy\\" decoding=\\"async\\" eleventy:ignore=\\"\\" /></picture></div>
        <div class=\\"cluster justify-between gutter-s\\">
          <button data-nav=\\"prev\\" class=\\"button\\" aria-label=\\"Previous image\\">
            <span aria-hidden=\\"true\\">←</span> Previous
          </button>
          <span class=\\"text-step-min-1\\" aria-live=\\"polite\\">
            17 / 18
          </span>
          <button data-nav=\\"next\\" class=\\"button\\" aria-label=\\"Next image\\">
            Next <span aria-hidden=\\"true\\">→</span>
          </button>
        </div>
      </dialog>
      <button class=\\"gallery-thumb\\" data-index=\\"17\\"><picture slot=\\"image\\">  <source type=\\"image/webp\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-17-480w.webp 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-17-800w.webp 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-17-1200w.webp 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" />
  <source type=\\"image/jpeg\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-17-480w.jpeg 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-17-800w.jpeg 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-17-1200w.jpeg 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" /><img src=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-17-1200w.jpeg\\" width=\\"1200\\" height=\\"900\\" alt=\\"A velociraptor drenched in red light rears between tree trunks, claws out, with a second raptor lunging at a tree behind, all against blue-lit foliage.\\" loading=\\"lazy\\" decoding=\\"async\\" eleventy:ignore=\\"\\" /></picture></button><dialog class=\\"flow gallery-dialog modal18\\">
        <div class=\\"cluster justify-end gutter-s\\">
          <button data-close=\\"\\" class=\\"button\\" autofocus=\\"\\">Close</button>
        </div>
        <div class=\\"flow text-center\\"><picture slot=\\"image\\">  <source type=\\"image/webp\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-18-480w.webp 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-18-800w.webp 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-18-1200w.webp 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" />
  <source type=\\"image/jpeg\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-18-480w.jpeg 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-18-800w.jpeg 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-18-1200w.jpeg 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" /><img src=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-18-1200w.jpeg\\" width=\\"1200\\" height=\\"898\\" alt=\\"Two raptors face off between tree trunks in intense red light, one snarling with claws raised, teal ferns and leaves cutting through the dark.\\" loading=\\"lazy\\" decoding=\\"async\\" eleventy:ignore=\\"\\" /></picture></div>
        <div class=\\"cluster justify-between gutter-s\\">
          <button data-nav=\\"prev\\" class=\\"button\\" aria-label=\\"Previous image\\">
            <span aria-hidden=\\"true\\">←</span> Previous
          </button>
          <span class=\\"text-step-min-1\\" aria-live=\\"polite\\">
            18 / 18
          </span>
          <button data-nav=\\"next\\" class=\\"button\\" aria-label=\\"Next image\\">
            Next <span aria-hidden=\\"true\\">→</span>
          </button>
        </div>
      </dialog>
      <button class=\\"gallery-thumb\\" data-index=\\"18\\"><picture slot=\\"image\\">  <source type=\\"image/webp\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-18-480w.webp 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-18-800w.webp 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-18-1200w.webp 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" />
  <source type=\\"image/jpeg\\" srcset=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-18-480w.jpeg 480w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-18-800w.jpeg 800w, https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-18-1200w.jpeg 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" /><img src=\\"https://flamedfury.com/assets/images/2026-07-15-auckland-zoo-dinosaurs-18-1200w.jpeg\\" width=\\"1200\\" height=\\"898\\" alt=\\"Two raptors face off between tree trunks in intense red light, one snarling with claws raised, teal ferns and leaves cutting through the dark.\\" loading=\\"lazy\\" decoding=\\"async\\" eleventy:ignore=\\"\\" /></picture></button></div>
</is-land>
<p>Hey, thanks for reading this post in your feed reader! Want to chat? <a href=\\\"mailto:hello@flamedfury.com?subject=RE: Dinosaur Discovery Returns\\\">Reply by email</a> or add me on <a href=\\\"xmpp:flamed@omg.lol\\\">XMPP</a>, or send a <a href=\\\"https://flamedfury.com/posts/dinosaur-discovery-returns/#webmention\\\">webmention</a>. Check out the <a href=\\\"https://flamedfury.com/posts/\\\">posts archive</a> on the website.</p>",
        "date_published": "2026-07-15T08:00:00Z",
        "summary": "Back to Auckland Zoo for this year&#39;s Dinosaur Discovery Track, with a batch of new dinosaurs on the loose."
      },{
        "id": "https://flamedfury.com/posts/there-and-back-again/",
        "title": "There And Back Again",
        "url": "https://flamedfury.com/posts/there-and-back-again/",
        "content_html": "<p>What’s going on, Internet? This was meant to be the April wrap-up. It’s now the middle of July, so let’s call it the autumn-into-winter wrap-up and pretend that was the plan all along, lol.</p>
<p>Autumn kicked off with <a href=\\"https://flamedfury.com/posts/happy-easter-2026/\\">Easter</a> down in Martinborough and a batch of <a href=\\"https://flamedfury.com/posts/hot-cross-buns/\\">hot cross buns</a>. I managed to get to three gigs in three months: <a href=\\"https://flamedfury.com/posts/mgk-at-the-spark-arena/\\">MGK at Spark Arena</a>, <a href=\\"https://flamedfury.com/posts/split-enz-at-spark-arena/\\">Split Enz at Spark Arena</a>, and a solo night out for <a href=\\"https://flamedfury.com/posts/home-brew-presents-last-week/\\">Home Brew performing Last Week at the Auckland Town Hall</a>. I’m so happy I got to see Home Brew perform live, finally after all these years. Auckland has been really good for me being able to get out to gigs more frequently.</p>
<p>More recently, this month we escaped a rainy afternoon at <a href=\\"https://flamedfury.com/posts/kelly-tarltons/\\">Kelly Tarlton’s</a>. The following weekend we headed south to <a href=\\"https://www.butterflycreek.co.nz/\\" rel=\\"noopener\\">Butterfly Creek</a> and spent the afternoon there. My first time visiting and really enjoyed it. It’s part butterfly sanctuary, part farm, part zoo, part adventure playground, and part dinosaur kingdom, lol. There’s a lot going on. We spent around 30 minutes in the butterfly house while my son stood super still in an attempt to have a butterfly land on him. So cute, but didn’t work out for him this time.</p>
<p>Then finally the weekend just been we spent a long weekend <a href=\\"https://flamedfury.com/posts/manawatia-a-matariki/\\">on Waiheke for Matariki</a>. We spent Friday on the beach, hot chocolate and fluffies at the beach cafe, late lunch at The HEKE, and a bus trip to Oneroa for ice cream. Saturday we spent the morning at the Ostend Markets, back to the beach, then back to the beach cafe for an early dinner and to watch the All Blacks Italy game.</p>
<p>When I last wrote about books, it was all about reading <a href=\\"https://flamedfury.com/posts/damn-i-can-still-read/\\">eBooks again</a>. Since then I’ve got through nine books, with only <a href=\\"https://flamedfury.com/bookshelf/a-darkness-returns/\\">A Darkness Returns</a> being an eBook. Highlights of these books were <a href=\\"https://flamedfury.com/bookshelf/the-new-girl/\\">The New Girl</a> and <a href=\\"https://flamedfury.com/bookshelf/leave-before-you-go/\\">Leave Before You Go</a> by Emily Perkins, <a href=\\"https://flamedfury.com/bookshelf/platform-decay/\\">Platform Decay</a> by Martha Wells and the return to James S. A. Corey’s new universe <a href=\\"https://flamedfury.com/bookshelf/the-faith-of-beasts/\\">The Faith of Beasts</a>.</p>
<p>I also read <a href=\\"https://flamedfury.com/bookshelf/the-lean-startup/\\">The Lean Startup</a>, <a href=\\"https://flamedfury.com/bookshelf/blood-ties-world-of-warcraft/\\">Blood Ties</a>, <a href=\\"https://flamedfury.com/bookshelf/famesick/\\">Famesick</a>, <a href=\\"https://flamedfury.com/bookshelf/don-t-burn-anyone-at-the-stake-today/\\">Don’t Burn Anyone at the Stake Today</a> but mostly didn’t finish these.</p>
<p>The record shelf did some damage this quarter, 20 new arrivals. June was basically an Olivia Rodrigo situation, and each gig sent me home with its record: MGK’s Lost Americana, True Colours after Split Enz, and Last Week on pink vinyl after the Home Brew show.</p>
<div class=\\"grid\\" style=\\"--grid-min-item-size: 12rem;\\">
  <article class=\\"record-card hypercard-effect\\">
    <a href=\\"https://flamedfury.com/recordshelf/records/carry-on-heliacal-sun/\\" class=\\"record-card__link\\">
      <img src=\\"https://covers.shelf.flamedfury.com/records/carry-on-heliacal-sun.webp\\" alt=\\"Chris Cornell - Carry On album cover\\" class=\\"record-card__image\\" loading=\\"lazy\\" width=\\"400\\" height=\\"400\\" />
    </a>
  </article>
  <article class=\\"record-card hypercard-effect\\">
    <a href=\\"https://flamedfury.com/recordshelf/records/rnzo-szn/\\" class=\\"record-card__link\\">
      <img src=\\"https://covers.shelf.flamedfury.com/records/rnzo-szn.webp\\" alt=\\"RNZŌ - RNZŌ SZN album cover\\" class=\\"record-card__image\\" loading=\\"lazy\\" width=\\"400\\" height=\\"400\\" />
    </a>
  </article>
  <article class=\\"record-card hypercard-effect\\">
    <a href=\\"https://flamedfury.com/recordshelf/records/the-joy-of-living-translucent-purple/\\" class=\\"record-card__link\\">
      <img src=\\"https://covers.shelf.flamedfury.com/records/the-joy-of-living-translucent-purple.webp\\" alt=\\"Amamelia - The Joy Of Living album cover\\" class=\\"record-card__image\\" loading=\\"lazy\\" width=\\"400\\" height=\\"400\\" />
    </a>
  </article>
  <article class=\\"record-card hypercard-effect\\">
    <a href=\\"https://flamedfury.com/recordshelf/records/encore-20th-anniversary-blue-edition/\\" class=\\"record-card__link\\">
      <img src=\\"https://covers.shelf.flamedfury.com/records/encore-20th-anniversary-blue-edition.webp\\" alt=\\"Eminem - Encore album cover\\" class=\\"record-card__image\\" loading=\\"lazy\\" width=\\"400\\" height=\\"400\\" />
    </a>
  </article>
  <article class=\\"record-card hypercard-effect\\">
    <a href=\\"https://flamedfury.com/recordshelf/records/lost-americana-azure-blue/\\" class=\\"record-card__link\\">
      <img src=\\"https://covers.shelf.flamedfury.com/records/lost-americana-azure-blue.webp\\" alt=\\"MGK - Lost Americana album cover\\" class=\\"record-card__image\\" loading=\\"lazy\\" width=\\"400\\" height=\\"400\\" />
    </a>
  </article>
  <article class=\\"record-card hypercard-effect\\">
    <a href=\\"https://flamedfury.com/recordshelf/records/oxymoron-silver-and-ultra-clear/\\" class=\\"record-card__link\\">
      <img src=\\"https://covers.shelf.flamedfury.com/records/oxymoron-silver-and-ultra-clear.webp\\" alt=\\"Schoolboy Q - Oxymoron album cover\\" class=\\"record-card__image\\" loading=\\"lazy\\" width=\\"400\\" height=\\"400\\" />
    </a>
  </article>
  <article class=\\"record-card hypercard-effect\\">
    <a href=\\"https://flamedfury.com/recordshelf/records/up-here-translucent-blue/\\" class=\\"record-card__link\\">
      <img src=\\"https://covers.shelf.flamedfury.com/records/up-here-translucent-blue.webp\\" alt=\\"The Bluey Music Team - Up Here album cover\\" class=\\"record-card__image\\" loading=\\"lazy\\" width=\\"400\\" height=\\"400\\" />
    </a>
  </article>
  <article class=\\"record-card hypercard-effect\\">
    <a href=\\"https://flamedfury.com/recordshelf/records/gangsta-s-paradise-blue/\\" class=\\"record-card__link\\">
      <img src=\\"https://covers.shelf.flamedfury.com/records/gangsta-s-paradise-blue.webp\\" alt=\\"Coolio - Gangsta's Paradise album cover\\" class=\\"record-card__image\\" loading=\\"lazy\\" width=\\"400\\" height=\\"400\\" />
    </a>
  </article>
  <article class=\\"record-card hypercard-effect\\">
    <a href=\\"https://flamedfury.com/recordshelf/records/true-colours-yellow/\\" class=\\"record-card__link\\">
      <img src=\\"https://covers.shelf.flamedfury.com/records/true-colours-yellow.webp\\" alt=\\"Split Enz - True Colours album cover\\" class=\\"record-card__image\\" loading=\\"lazy\\" width=\\"400\\" height=\\"400\\" />
    </a>
  </article>
  <article class=\\"record-card hypercard-effect\\">
    <a href=\\"https://flamedfury.com/recordshelf/records/little-wide-open-peach/\\" class=\\"record-card__link\\">
      <img src=\\"https://covers.shelf.flamedfury.com/records/little-wide-open-peach.webp\\" alt=\\"Kevin Morby - Little Wide Open album cover\\" class=\\"record-card__image\\" loading=\\"lazy\\" width=\\"400\\" height=\\"400\\" />
    </a>
  </article>
  <article class=\\"record-card hypercard-effect\\">
    <a href=\\"https://flamedfury.com/recordshelf/records/last-week-pink/\\" class=\\"record-card__link\\">
      <img src=\\"https://covers.shelf.flamedfury.com/records/last-week-pink.webp\\" alt=\\"Home Brew - Last Week album cover\\" class=\\"record-card__image\\" loading=\\"lazy\\" width=\\"400\\" height=\\"400\\" />
    </a>
  </article>
  <article class=\\"record-card hypercard-effect\\">
    <a href=\\"https://flamedfury.com/recordshelf/records/ascending/\\" class=\\"record-card__link\\">
      <img src=\\"https://covers.shelf.flamedfury.com/records/ascending.webp\\" alt=\\"Clear Path Ensemble - Ascending album cover\\" class=\\"record-card__image\\" loading=\\"lazy\\" width=\\"400\\" height=\\"400\\" />
    </a>
  </article>
  <article class=\\"record-card hypercard-effect\\">
    <a href=\\"https://flamedfury.com/recordshelf/records/3-dream-pop/\\" class=\\"record-card__link\\">
      <img src=\\"https://covers.shelf.flamedfury.com/records/3-dream-pop.webp\\" alt=\\"Britney Spears - 3 album cover\\" class=\\"record-card__image\\" loading=\\"lazy\\" width=\\"400\\" height=\\"400\\" />
    </a>
  </article>
  <article class=\\"record-card hypercard-effect\\">
    <a href=\\"https://flamedfury.com/recordshelf/records/coast-arcade-blue-marbled/\\" class=\\"record-card__link\\">
      <img src=\\"https://covers.shelf.flamedfury.com/records/coast-arcade-blue-marbled.webp\\" alt=\\"Coast Arcade - Coast Arcade album cover\\" class=\\"record-card__image\\" loading=\\"lazy\\" width=\\"400\\" height=\\"400\\" />
    </a>
  </article>
  <article class=\\"record-card hypercard-effect\\">
    <a href=\\"https://flamedfury.com/recordshelf/records/walk-of-fame-reborn-translucent-blue/\\" class=\\"record-card__link\\">
      <img src=\\"https://covers.shelf.flamedfury.com/records/walk-of-fame-reborn-translucent-blue.webp\\" alt=\\"Miley Cyrus - Walk Of Fame / Reborn album cover\\" class=\\"record-card__image\\" loading=\\"lazy\\" width=\\"400\\" height=\\"400\\" />
    </a>
  </article>
  <article class=\\"record-card hypercard-effect\\">
    <a href=\\"https://flamedfury.com/recordshelf/records/drivers-license-burning-down-the-house-translucent-red/\\" class=\\"record-card__link\\">
      <img src=\\"https://covers.shelf.flamedfury.com/records/drivers-license-burning-down-the-house-translucent-red.webp\\" alt=\\"Olivia Rodrigo - Drivers License / Burning Down The House album cover\\" class=\\"record-card__image\\" loading=\\"lazy\\" width=\\"400\\" height=\\"400\\" />
    </a>
  </article>
  <article class=\\"record-card hypercard-effect\\">
    <a href=\\"https://flamedfury.com/recordshelf/records/sour-sour-purple/\\" class=\\"record-card__link\\">
      <img src=\\"https://covers.shelf.flamedfury.com/records/sour-sour-purple.webp\\" alt=\\"Olivia Rodrigo - Sour album cover\\" class=\\"record-card__image\\" loading=\\"lazy\\" width=\\"400\\" height=\\"400\\" />
    </a>
  </article>
  <article class=\\"record-card hypercard-effect\\">
    <a href=\\"https://flamedfury.com/recordshelf/records/you-seem-pretty-sad-for-a-girl-so-in-love-pretty-sad-pink/\\" class=\\"record-card__link\\">
      <img src=\\"https://covers.shelf.flamedfury.com/records/you-seem-pretty-sad-for-a-girl-so-in-love-pretty-sad-pink.webp\\" alt=\\"Olivia Rodrigo - You Seem Pretty Sad For A Girl So In Love album cover\\" class=\\"record-card__image\\" loading=\\"lazy\\" width=\\"400\\" height=\\"400\\" />
    </a>
  </article>
  <article class=\\"record-card hypercard-effect\\">
    <a href=\\"https://flamedfury.com/recordshelf/records/decemberunderground-transparent-smoke/\\" class=\\"record-card__link\\">
      <img src=\\"https://covers.shelf.flamedfury.com/records/decemberunderground-transparent-smoke.webp\\" alt=\\"AFI - Decemberunderground album cover\\" class=\\"record-card__image\\" loading=\\"lazy\\" width=\\"400\\" height=\\"400\\" />
    </a>
  </article>
  <article class=\\"record-card hypercard-effect\\">
    <a href=\\"https://flamedfury.com/recordshelf/records/zips-galore-solid-yellow/\\" class=\\"record-card__link\\">
      <img src=\\"https://covers.shelf.flamedfury.com/records/zips-galore-solid-yellow.webp\\" alt=\\"+++! - ZIPS GALORE album cover\\" class=\\"record-card__image\\" loading=\\"lazy\\" width=\\"400\\" height=\\"400\\" />
    </a>
  </article>
</div>
<p>I guess the other thing with three months to cover is that I got through <strong>a lot</strong> of media. Highlights being <a href=\\"https://trakt.tv/shows/outer-banks\\" rel=\\"noopener\\">Outer Banks</a>. I wrote up <a href=\\"https://flamedfury.com/posts/outer-banks-2020-seasons-one-and-two/\\">seasons one and two</a> and have since torn through season three and halfway through season four as I write this. Such a fun show. I realised as I started season three that this reminds me of the recent Tomb Raider games or the older Uncharted games which I loved playing.</p>
<p>The other big binge was <a href=\\"https://trakt.tv/shows/hacks\\" rel=\\"noopener\\">Hacks</a>, all five seasons, 47 episodes. I had an absolute blast with this show. It was sitting there waiting to be watched for literal years and I finally sat down and blasted through it.</p>
<p>Another standout was <a href=\\"https://trakt.tv/shows/tulsa-king\\" rel=\\"noopener\\">Tulsa King</a>, got through the last two seasons quickly. I wasn’t expecting to enjoy this show so much!</p>
<p><a href=\\"https://trakt.tv/shows/the-boys\\" rel=\\"noopener\\">The Boys</a> wrapped up with season five. I think I was satisfied with how it ended? Yeah, I think so. I also got through <a href=\\"https://trakt.tv/shows/fallout\\" rel=\\"noopener\\">Fallout</a> season two quickly, can’t wait for the next. And also wrapping up was <a href=\\"https://trakt.tv/shows/euphoria\\" rel=\\"noopener\\">Euphoria</a> which messily wrapped up with season three. This season was kinda bat shit, not sure whether I enjoyed it or not, but happy I don’t have to think about it any more.</p>
<p>Keeping up with the weeklies and new seasons: <a href=\\"https://trakt.tv/shows/house-of-the-dragon\\" rel=\\"noopener\\">House of the Dragon</a> season three, <a href=\\"https://trakt.tv/shows/x-men-97\\" rel=\\"noopener\\">X-Men '97</a> season two, and <a href=\\"https://trakt.tv/shows/power-book-iii-raising-kanan\\" rel=\\"noopener\\">Power Book III: Raising Kanan</a> season five. This season we’re really seeing Kanan turning into how we saw him in Ghost.</p>
<p>I’m also slowly working through <a href=\\"https://trakt.tv/shows/only-murders-in-the-building\\" rel=\\"noopener\\">Only Murders in the Building</a> season five with my wife and in-laws when we are able to sit down together and watch an episode.</p>
<p>Eighteen movies since March. The highlights though. I caught <a href=\\"https://trakt.tv/movies/project-hail-mary-2026\\" rel=\\"noopener\\">Project Hail Mary</a> at the theatre with my brother-in-law before it stopped showing. Finally caught up with <a href=\\"https://trakt.tv/movies/the-fantastic-4-first-steps-2025\\" rel=\\"noopener\\">The Fantastic 4: First Steps</a> to make sure I’m up to speed with the road to Avengers: Doomsday. I was excited to see <a href=\\"https://trakt.tv/movies/the-devil-wears-prada-2-2026\\" rel=\\"noopener\\">The Devil Wears Prada 2</a> as the first always had a special nostalgic place in my heart.</p>
<p><a href=\\"https://trakt.tv/movies/anniversary-2025\\" rel=\\"noopener\\">Anniversary</a> was an unexpected sleeper, I was not expecting what this movie ended up being after watching the trailer.</p>
<p><a href=\\"https://trakt.tv/movies/don-t-ever-stop-2024\\" rel=\\"noopener\\">Don’t Ever Stop</a>, a fantastic documentary on Tony De Vit. This was especially good as a hardhouse fan and hearing legends of the scene talk about their interactions with Tony and memories of the origins of what became the hardhouse scene in the UK.</p>
<p><a href=\\"https://trakt.tv/movies/the-drama-2026\\" rel=\\"noopener\\">The Drama</a> was an interesting one, and to be honest I thought the other woman’s secret she shared was way worse than Zendaya’s. Locking a kid in a fridge in the forest and not telling anyone is wild. Get out of here.</p>
<p>And the rest… <a href=\\"https://trakt.tv/movies/office-romance-2026\\" rel=\\"noopener\\">Office Romance</a>, <a href=\\"https://trakt.tv/movies/mile-end-kicks-2026\\" rel=\\"noopener\\">Mile End Kicks</a>, <a href=\\"https://trakt.tv/movies/a-real-pain-2024\\" rel=\\"noopener\\">A Real Pain</a>, <a href=\\"https://trakt.tv/movies/eenie-meanie-2025\\" rel=\\"noopener\\">Eenie Meanie</a>, <a href=\\"https://trakt.tv/movies/carolina-caroline-2026\\" rel=\\"noopener\\">Carolina Caroline</a>, <a href=\\"https://trakt.tv/movies/stone-cold-fox-2025\\" rel=\\"noopener\\">Stone Cold Fox</a>. I don’t think I watched any I didn’t like.</p>
<p>The bookmarks kept flowing while the blog was quiet. The best of them are already rounded up in the <a href=\\"https://flamedfury.com/posts/link-dump-may-2026/\\">May</a> and <a href=\\"https://flamedfury.com/posts/link-dump-june-2026/\\">June</a> link dumps, so I won’t repeat them here. Check out the <a href=\\"https://flamedfury.com/bookmarks/\\">bookmarks page</a> for even more.</p>
<p>Around the web? I can’t remember if I shared this already, but I participated with <a href=\\"https://ctrl-c.club/~loghead/zine/Ctrl-ZINE.Issue.24.pdf\\" rel=\\"noopener\\">issue 24</a> of the <a href=\\"https://ctrl-c.club/~loghead/zine/\\" rel=\\"noopener\\">Ctrl-ZINE</a>. Go give that a read! I also finally sat down with Manu to answer his <a href=\\"https://zacharykai.net/notes/pb/flamed/\\" rel=\\"noopener\\">People And Blogs</a> questions. Manu has also hung up his hat since founding and running the series for the last few years and <a href=\\"https://zacharykai.net/\\" rel=\\"noopener\\">Zachary Kai</a> has picked up the reins. You can find the <a href=\\"https://zacharykai.net/notes/pb/\\" rel=\\"noopener\\">archive here</a>.</p>
<p><a href=\\"https://jamesg.blog/\\" rel=\\"noopener\\">James</a> has recently started a new podcast, <a href=\\"https://web-weaving.jamesg.blog/\\" rel=\\"noopener\\">Wonders of Web Weaving</a> which is 9 episodes deep as of writing. Catch up on all of them if you haven’t already, and if you keep listening you might hear yours truely in a week or two 😉</p>
<p>Website wise, there’s plenty going on under the hood while I prepare for the 2027 redesign. Really looking forward to sharing this with you all soon. There’ve been a few improvements around the site, but you’ll see most of the changes when I roll out the new design.</p>
<p>I did sit down and <a href=\\"https://flamedfury.com/guides/11ty-homepage-neocities-2026/\\">refresh my 11ty and Neocities guide</a>. I’m really pleased with all the great feedback I’ve received from this one, especially with all the people who have successfully managed to build a website using 11ty with it.</p>
<hr />
<p>Sweeet, laters 🤙</p>
<p>Hey, thanks for reading this post in your feed reader! Want to chat? <a href=\\\"mailto:hello@flamedfury.com?subject=RE: There And Back Again\\\">Reply by email</a> or add me on <a href=\\\"xmpp:flamed@omg.lol\\\">XMPP</a>, or send a <a href=\\\"https://flamedfury.com/posts/there-and-back-again/#webmention\\\">webmention</a>. Check out the <a href=\\\"https://flamedfury.com/posts/\\\">posts archive</a> on the website.</p>",
        "date_published": "2026-07-13T08:00:00Z",
        "summary": "What I&#39;ve been up to over autumn and into winter."
      },{
        "id": "https://flamedfury.com/posts/manawatia-a-matariki/",
        "title": "Mānawatia a Matariki",
        "url": "https://flamedfury.com/posts/manawatia-a-matariki/",
        "content_html": "<p>What’s going on, Internet? Mānawatia a Matariki, Happy Māori New Year! Today is a time for remembrance, celebrating the present, and looking to the future.</p>
<p>In Māori culture, Matariki is the Pleiades star cluster and a celebration of its first rising in late June or early July. The rising marks the beginning of the new year in the Māori lunar calendar. <a href=\\"https://en.wikipedia.org/wiki/Matariki\\" rel=\\"noopener\\">See Matariki</a>.</p>
<p>I’ve spent the day on Waiheke, down on Onetangi with my amazing wife and family. We spent the morning on the beach. The early afternoon at The HEKE for a long lunch and then cuddled up with the kids watching Bluey this evening. I hope you’ve had a relaxing day too.</p>
<p>If you want to get into some great homegrown kiwi music, RNZ put on ‘<a href=\\"https://www.rnz.co.nz/life/music/2026-waiata-100-countdown\\" rel=\\"noopener\\">Waiata 100: New Zealand’s most beloved homegrown songs</a>’ today, counting down the most loved kiwi songs as voted by 65,000 kiwis. Lots of great music in there, my only complaint is that a lot of bangers from the last decade have been overlooked I guess based on the voter generation. I’ll follow up a post of great music from the last five years another day.</p>
<p>Anyway, happy Matariki.</p>
<p>Hey, thanks for reading this post in your feed reader! Want to chat? <a href=\\\"mailto:hello@flamedfury.com?subject=RE: Mānawatia a Matariki\\\">Reply by email</a> or add me on <a href=\\\"xmpp:flamed@omg.lol\\\">XMPP</a>, or send a <a href=\\\"https://flamedfury.com/posts/manawatia-a-matariki/#webmention\\\">webmention</a>. Check out the <a href=\\\"https://flamedfury.com/posts/\\\">posts archive</a> on the website.</p>",
        "date_published": "2026-07-10T08:48:51Z",
        "summary": "Happy Māori New Year!"
      },{
        "id": "https://flamedfury.com/posts/link-dump-june-2026/",
        "title": "Link Dump: June 2026",
        "url": "https://flamedfury.com/posts/link-dump-june-2026/",
        "content_html": "<p>What’s going on, Internet? A few good links about blogging from this month. Enjoy.</p>
<ul class=\\"list\\">
<li><a href=\\"https://manuelmoreale.com/interview/flamed\\" rel=\\"noopener\\">People and Blogs - fLaMEd 🔥</a> My People and Blogs chat on web ownership, 25 years of fLaMEd fury, and why I’m still here.</li>
<li><a href=\\"https://susam.codeberg.page/wcn/\\" rel=\\"noopener\\">Wander Console Network</a> Wander is a small, decentralised, self-hosted web console that lets visitors explore websites and pages recommended by a community of independent personal site owners. Like webrings reborn, self-hosted consoles recommending each other instead of letting an algorithm decide what you find.</li>
<li><a href=\\"https://www.terrygodier.com/the-boring-internet\\" rel=\\"noopener\\">The Boring Internet - Terry Godier</a> The open internet isn’t dying, just the commercial crust glued on top of it.</li>
<li><a href=\\"https://michaelharley.net/posts/2026/06/15/bloggers-can-we-make-better-titles-for-our-posts/\\" rel=\\"noopener\\">Bloggers, can we make better titles for our posts? - Michael Harley</a> Fair point that vague titles like “Recent Thoughts” sink in a feed when nobody can tell what they’re about.</li>
<li><a href=\\"https://lwgrs.bearblog.dev/re-bloggers-can-we-make-better-titles-for-our-posts/\\" rel=\\"noopener\\">re: Bloggers, can we make better titles for our posts? - An Almost Anonymous Blog</a> Good pushback on the title advice: weekly recaps and the like are easy to skip, and a decent way to find new bloggers.</li>
<li><a href=\\"https://www.newsonaut.com/articles/link-like-the-indie-web-depended-on-it\\" rel=\\"noopener\\">Newsonaut: Turning inner space into outer space</a> Linking out is the cheapest way to keep the indie web alive.</li>
<li><a href=\\"https://jamesg.blog/blogger-archetypes\\" rel=\\"noopener\\">Blogger Archetype Quiz</a> A cheeky wee quiz that sorts you into a blogging archetype. I came out as a link curator. What’d you get?</li>
</ul>
<p>For more, check out the <a href=\\"https://flamedfury.com/bookmarks/\\">bookmarks</a> archive, and subscribe to the <a href=\\"https://flamedfury.com/feeds/\\">feeds</a> if you want these as they happen.</p>
<p>Hey, thanks for reading this post in your feed reader! Want to chat? <a href=\\\"mailto:hello@flamedfury.com?subject=RE: Link Dump: June 2026\\\">Reply by email</a> or add me on <a href=\\\"xmpp:flamed@omg.lol\\\">XMPP</a>, or send a <a href=\\\"https://flamedfury.com/posts/link-dump-june-2026/#webmention\\\">webmention</a>. Check out the <a href=\\\"https://flamedfury.com/posts/\\\">posts archive</a> on the website.</p>",
        "date_published": "2026-07-02T07:32:56Z",
        "summary": "Dumping some open tabs from the month. There might be something in here you might find interesting."
      },{
        "id": "https://flamedfury.com/posts/outer-banks-2020-seasons-one-and-two/",
        "title": "Outer Banks (2020) Seasons One &amp; Two",
        "url": "https://flamedfury.com/posts/outer-banks-2020-seasons-one-and-two/",
        "content_html": "<p>What’s going on, Internet? I just finished up the first season of Outer Banks (2020) and damn did I enjoy it.</p>
<p>A teen drama, but not your typical teen drama. A group of friends (Pogues - you’re either a Pogue or a Kook in this show) from the wrong side of town are on the trail of a long-buried mystery. We see as they uncover the mystery how this spirals from one disaster to another. Watching through the pilot episode, we’re introduced to the main characters, John B, JJ, Pope, and Kiara. We learn about the rivalry between the Pogues from the cut and the Kooks from the rich side of town.</p>
<p>Minor spoilers ahead. The show’s been out for years so, whatever.</p>
<p>It doesn’t take long for the relationship drama to kick in. John B falls for Sarah Cameron, a Kook from the rich side of the island, which crosses just about every line the Pogues stand for and pulls her right into the middle of the hunt. There’s friction inside the group too, the kind you get from four mates who’d do anything for each other but don’t always agree on how. None of it feels like filler. It all winds up feeding the stakes and pushing the story forward.</p>
<p>The show was created by Jonas Pate, the same creator behind <a href=\\"https://flamedfury.com/posts/the-runarounds-2025/\\">The Runarounds</a>, which I watched and loved last year. Same coastal vibe, same knack for a tight young cast. The Runarounds even started life as a real band that popped up in Outer Banks, so watching The Runarounds led me to this.</p>
<p>When I started writing this post I had already started the second season, and now a week later after finally finishing the post I’ve finished the second season. I’ve paused starting the third so I can write this post, lol, and also watch a few other shows in between.</p>
<p>What I loved about the second season is the original mystery that was deeply intertwined with John B kind of wraps up. Disappointingly so, I guess it’s going to come back in the later seasons. So to keep the show going the mystery intensifies, but this time centered around Pope. New bad guys introduced, more unrealistic situations for sixteen-year-olds happen and more plot twists appear.</p>
<p>I’ve said this about a few books I’ve read in the past, but sometimes these stories would land better if the characters were ten years older. I just can’t realistically see sixteen/seventeen-year-olds being able to do this.</p>
<p>So, I was on the edge of my seat for a few days while I slammed through the episodes. The last two or three were intense. I enjoyed the twists, and especially loved the cliffhanger.</p>
<p>It won’t be long before I dive into the third.</p>
<p>Hey, thanks for reading this post in your feed reader! Want to chat? <a href=\\\"mailto:hello@flamedfury.com?subject=RE: Outer Banks (2020) Seasons One &amp; Two\\\">Reply by email</a> or add me on <a href=\\\"xmpp:flamed@omg.lol\\\">XMPP</a>, or send a <a href=\\\"https://flamedfury.com/posts/outer-banks-2020-seasons-one-and-two/#webmention\\\">webmention</a>. Check out the <a href=\\\"https://flamedfury.com/posts/\\\">posts archive</a> on the website.</p>",
        "date_published": "2026-06-24T08:21:10Z",
        "summary": "A teen drama, but not your typical teen drama. I love teen dramas."
      },{
        "id": "https://flamedfury.com/posts/i-am-a-link-curator/",
        "title": "I Am A Link Curator",
        "url": "https://flamedfury.com/posts/i-am-a-link-curator/",
        "content_html": "<p>What’s going on, Internet? Friend of the site <a href=\\"https://jamesg.blog/\\" rel=\\"noopener\\">James</a> recently shared a new post <a href=\\"https://jamesg.blog/blogger-archetypes\\" rel=\\"noopener\\">Blogger Archetypes</a> which asks a series of questions to help you narrow down your character as a member of the blogging community. A bit of indie web fun.</p>
<p>Here are my results:</p>
<blockquote>
<p><strong>You are a Link curator</strong></p>
<p>The web is not just its pages, but the connections between pages. You have internalised this and love spending your time exploring the web and sharing what you find with the world.</p>
<p><strong>You are also a Culture maker</strong></p>
<p>You love to help push the blogging community forward by starting discussions, encouraging thought, and sharing what’s on your mind.</p>
</blockquote>
<p>And the other archetypes on offer:</p>
<blockquote>
<p><strong>Explorer:</strong> To you, the web feels like a library that’s open all hours and has everything you could ever imagine! You love reading others blogs, and know how important readers are to the whole of the indie web community!</p>
<p><strong>Community gardener:</strong> You love to help contribute to building the blogging community, either through your writing or how you share the spirit of writing on the web with friends.</p>
<p><strong>Author:</strong> You love writing and have a growing backlog of posts on your website! Words are your best friend and you’re always thinking about what to write next.</p>
</blockquote>
<p>Link curator feels about right. A lot of what I do here is exactly that. Surfing the web, finding the good stuff, and passing it along. The <a href=\\"https://flamedfury.com/bookmarks\\">bookmarks</a>, the links back to other people’s writing (which I need to get back into doing regularly). That’s the fun part for me.</p>
<p>If you’ve got a blog, go and <a href=\\"https://jamesg.blog/blogger-archetypes\\" rel=\\"noopener\\">take the quiz</a> and write up what you got. Send it my way, I’d love to to see what you got. 🤙</p>
<p>Hey, thanks for reading this post in your feed reader! Want to chat? <a href=\\\"mailto:hello@flamedfury.com?subject=RE: I Am A Link Curator\\\">Reply by email</a> or add me on <a href=\\\"xmpp:flamed@omg.lol\\\">XMPP</a>, or send a <a href=\\\"https://flamedfury.com/posts/i-am-a-link-curator/#webmention\\\">webmention</a>. Check out the <a href=\\\"https://flamedfury.com/posts/\\\">posts archive</a> on the website.</p>",
        "date_published": "2026-06-22T08:49:05Z",
        "summary": "I took James&#39; Blogger Archetypes quiz and got &#92;&#92;&quot;link curator&#92;&#92;&quot;. Take it yourself and let me know your result."
      },{
        "id": "https://flamedfury.com/guides/11ty-homepage-neocities-2026/",
        "title": "Create A Static Site Using 11ty &amp; Deploy to Neocities (2026 Refresh)",
        "url": "https://flamedfury.com/guides/11ty-homepage-neocities-2026/",
        "content_html": "<p>What’s going on, Internet? Way back in 2022 I wrote a <a href=\\"https://flamedfury.com/guides/11ty-homepage-neocities/\\">guide on building a static site with 11ty and deploying it to Neocities</a>. It’s been one of my most-read posts, but it’s also aged: Eleventy has moved to v3 with a brand new module system, the dev server changed, and my whole workflow has shifted away from GitHub toward <a href=\\"https://forgejo.org/\\" rel=\\"noopener\\">Forgejo</a> and <a href=\\"https://codeberg.org/\\" rel=\\"noopener\\">Codeberg</a>. So here’s the refresh.</p>
<p>I haven’t hosted my own site on Neocities for years now, but it’s still home to a huge community of personal sites and homepages, especially folks in the <a href=\\"https://32bit.cafe/\\" rel=\\"noopener\\">32-Bit Cafe</a>, so this guide is still very much for them.</p>
<p>This guide aims to help you create a homepage using the static site generator (SSG) <a href=\\"https://11ty.dev/\\" rel=\\"noopener\\">11ty</a>, keep the code in version control, and deploy it to <a href=\\"https://neocities.org/\\" rel=\\"noopener\\">Neocities</a>, first by hand, then automatically.</p>
<p>The homepage that we are creating will take advantage of the <a href=\\"https://mozilla.github.io/nunjucks/\\" rel=\\"noopener\\">Nunjucks</a> templating language, allowing us to create a shared header, navigation and footer across all the pages on our homepage.</p>
<p>We will be creating an about, links, and contact pages before diving in and creating the ability to add a blog and a list of all blog posts on the blog page!</p>
<p>We will structure and style the page with a standard HTML5 boilerplate and some basic CSS that should allow you to add in your unique flavour that we all know you love to do.</p>
<aside class=\\"aside flow note\\">
    <div class=\\"aside__content\\">
<p>This guide assumes the following:</p>
<ul>
  <li>You have a basic understanding of HTML and CSS</li>
  <li>You have a basic understanding of the command line and terminal</li>
  <li>You have Node.js installed (version 18 or newer)</li>
  <li>You're using <a href=\\"https://vscodium.com/\\">VSCodium</a> as your editor</li>
  <li>You have a Neocities account</li>
  <li>You have somewhere to keep your code: a <a href=\\"https://forgejo.org/\\">Forgejo</a> instance or a <a href=\\"https://codeberg.org/\\">Codeberg</a> account</li>
</ul>
</div>
  </aside>
<aside class=\\"aside flow note\\">
    <div class=\\"aside__content\\">
This guide uses Eleventy v3, which is written in modern JavaScript modules (ESM). If you've followed an older 11ty tutorial that used <code>.eleventy.js</code> with <code>module.exports</code>, the config in this guide will look a little different. That's expected.
</div>
  </aside>
<h2 id=\\"create-a-new-project\\"><a class=\\"heading-anchor\\" href=\\"https://flamedfury.com/guides/11ty-homepage-neocities-2026/#create-a-new-project\\">Create a new project</a></h2>
<p>First off, from a terminal, confirm that you have Node and NPM installed:</p>
<aside class=\\"aside flow note\\">
    <div class=\\"aside__content\\">
Any terminal will do here: Terminal.app on macOS, the default terminal that ships with whatever flavour of Linux you run, or the latest Windows Terminal on Windows. I use <a href=\\"https://ghostty.org/\\">Ghostty</a>.
</div>
  </aside>
<pre class=\\"language-bash\\"><code class=\\"language-bash\\"><span class=\\"token function\\">node</span> <span class=\\"token parameter variable\\">-v</span> <span class=\\"token operator\\">&amp;&amp;</span> <span class=\\"token function\\">npm</span> <span class=\\"token parameter variable\\">-v</span>
v22.11.0
<span class=\\"token number\\">10.9</span>.0</code></pre>
<aside class=\\"aside flow note\\">
    <div class=\\"aside__content\\">
Eleventy v3 needs Node.js 18 or newer. If your version is older, grab the current LTS release from <a href=\\"https://nodejs.org/\\">nodejs.org</a> first.
</div>
  </aside>
<p>Create a new directory and cd into it:</p>
<pre class=\\"language-bash\\"><code class=\\"language-bash\\"><span class=\\"token function\\">mkdir</span> 11ty-neocities <span class=\\"token operator\\">&amp;&amp;</span> <span class=\\"token builtin class-name\\">cd</span> 11ty-neocities</code></pre>
<p>Initiate a new project:</p>
<pre class=\\"language-bash\\"><code class=\\"language-bash\\"><span class=\\"token function\\">npm</span> init <span class=\\"token parameter variable\\">-y</span></code></pre>
<p>Install 11ty:</p>
<pre class=\\"language-bash\\"><code class=\\"language-bash\\"><span class=\\"token function\\">npm</span> <span class=\\"token function\\">install</span> @11ty/eleventy</code></pre>
<p>Once the 11ty installation is complete, open the project in your favourite code editor:</p>
<pre class=\\"language-bash\\"><code class=\\"language-bash\\">codium <span class=\\"token builtin class-name\\">.</span></code></pre>
<aside class=\\"aside flow note\\">
    <div class=\\"aside__content\\">
Typing <code>codium .</code> into a project directory will open up the project directory in VSCodium.
</div>
  </aside>
<p>You should now be in VSCodium with the following project structure:</p>
<pre class=\\"language-text\\"><code class=\\"language-text\\">11ty-neocities/
├── node_modules/
├── package.json
└── package-lock.json</code></pre>
<p>Open <code>package.json</code> and update the scripts section to the following:</p>
<pre class=\\"language-js\\"><code class=\\"language-js\\">  <span class=\\"token string-property property\\">\\"scripts\\"</span><span class=\\"token operator\\">:</span> <span class=\\"token punctuation\\">{</span>
    <span class=\\"token string-property property\\">\\"start\\"</span><span class=\\"token operator\\">:</span> <span class=\\"token string\\">\\"npx @11ty/eleventy --serve\\"</span><span class=\\"token punctuation\\">,</span>
    <span class=\\"token string-property property\\">\\"build\\"</span><span class=\\"token operator\\">:</span> <span class=\\"token string\\">\\"npx @11ty/eleventy\\"</span>
  <span class=\\"token punctuation\\">}</span><span class=\\"token punctuation\\">,</span></code></pre>
<p>We also need to tell Node that this is an ESM project. Add <code>&quot;type&quot;: &quot;module&quot;</code> to <code>package.json</code>. The file should look like this:</p>
<pre class=\\"language-js\\"><code class=\\"language-js\\"><span class=\\"token punctuation\\">{</span>
  <span class=\\"token string-property property\\">\\"name\\"</span><span class=\\"token operator\\">:</span> <span class=\\"token string\\">\\"11ty-neocities\\"</span><span class=\\"token punctuation\\">,</span>
  <span class=\\"token string-property property\\">\\"version\\"</span><span class=\\"token operator\\">:</span> <span class=\\"token string\\">\\"1.0.0\\"</span><span class=\\"token punctuation\\">,</span>
  <span class=\\"token string-property property\\">\\"description\\"</span><span class=\\"token operator\\">:</span> <span class=\\"token string\\">\\"\\"</span><span class=\\"token punctuation\\">,</span>
  <span class=\\"token string-property property\\">\\"type\\"</span><span class=\\"token operator\\">:</span> <span class=\\"token string\\">\\"module\\"</span><span class=\\"token punctuation\\">,</span>
  <span class=\\"token string-property property\\">\\"main\\"</span><span class=\\"token operator\\">:</span> <span class=\\"token string\\">\\"index.js\\"</span><span class=\\"token punctuation\\">,</span>
  <span class=\\"token string-property property\\">\\"scripts\\"</span><span class=\\"token operator\\">:</span> <span class=\\"token punctuation\\">{</span>
    <span class=\\"token string-property property\\">\\"start\\"</span><span class=\\"token operator\\">:</span> <span class=\\"token string\\">\\"npx @11ty/eleventy --serve\\"</span><span class=\\"token punctuation\\">,</span>
    <span class=\\"token string-property property\\">\\"build\\"</span><span class=\\"token operator\\">:</span> <span class=\\"token string\\">\\"npx @11ty/eleventy\\"</span>
  <span class=\\"token punctuation\\">}</span><span class=\\"token punctuation\\">,</span>
  <span class=\\"token string-property property\\">\\"keywords\\"</span><span class=\\"token operator\\">:</span> <span class=\\"token punctuation\\">[</span><span class=\\"token punctuation\\">]</span><span class=\\"token punctuation\\">,</span>
  <span class=\\"token string-property property\\">\\"author\\"</span><span class=\\"token operator\\">:</span> <span class=\\"token string\\">\\"\\"</span><span class=\\"token punctuation\\">,</span>
  <span class=\\"token string-property property\\">\\"license\\"</span><span class=\\"token operator\\">:</span> <span class=\\"token string\\">\\"ISC\\"</span><span class=\\"token punctuation\\">,</span>
  <span class=\\"token string-property property\\">\\"dependencies\\"</span><span class=\\"token operator\\">:</span> <span class=\\"token punctuation\\">{</span>
    <span class=\\"token string-property property\\">\\"@11ty/eleventy\\"</span><span class=\\"token operator\\">:</span> <span class=\\"token string\\">\\"^3.1.6\\"</span>
  <span class=\\"token punctuation\\">}</span>
<span class=\\"token punctuation\\">}</span></code></pre>
<aside class=\\"aside flow note\\">
    <div class=\\"aside__content\\">
<p>The <code>\\"type\\": \\"module\\"</code> line lets us use modern <code>import</code>/<code>export</code> syntax in our config and JavaScript files.</p>
<p>The <code>start</code> script lets us run <code>npm start</code> to serve our homepage with hot-reload, provided by Eleventy's built-in dev server. Every time you save a change in VSCodium, the browser reloads with your most recent changes, amazing!</p>
</div>
  </aside>
<h2 id=\\"create-an-11ty-config-file\\"><a class=\\"heading-anchor\\" href=\\"https://flamedfury.com/guides/11ty-homepage-neocities-2026/#create-an-11ty-config-file\\">Create an 11ty config file</a></h2>
<p>From the terminal (or VSCodium), create a new file <code>eleventy.config.js</code> at the project root:</p>
<pre class=\\"language-bash\\"><code class=\\"language-bash\\"><span class=\\"token function\\">touch</span> eleventy.config.js</code></pre>
<p>Open the file in VSCodium and add the following and save:</p>
<pre class=\\"language-js\\"><code class=\\"language-js\\"><span class=\\"token keyword\\">export</span> <span class=\\"token keyword\\">default</span> <span class=\\"token keyword\\">function</span> <span class=\\"token punctuation\\">(</span><span class=\\"token parameter\\">eleventyConfig</span><span class=\\"token punctuation\\">)</span> <span class=\\"token punctuation\\">{</span>
  <span class=\\"token keyword\\">return</span> <span class=\\"token punctuation\\">{</span>
    <span class=\\"token literal-property property\\">dir</span><span class=\\"token operator\\">:</span> <span class=\\"token punctuation\\">{</span>
      <span class=\\"token literal-property property\\">input</span><span class=\\"token operator\\">:</span> <span class=\\"token string\\">\\"src\\"</span><span class=\\"token punctuation\\">,</span>
      <span class=\\"token literal-property property\\">output</span><span class=\\"token operator\\">:</span> <span class=\\"token string\\">\\"public\\"</span><span class=\\"token punctuation\\">,</span>
      <span class=\\"token literal-property property\\">includes</span><span class=\\"token operator\\">:</span> <span class=\\"token string\\">\\"_includes\\"</span><span class=\\"token punctuation\\">,</span>
    <span class=\\"token punctuation\\">}</span><span class=\\"token punctuation\\">,</span>
  <span class=\\"token punctuation\\">}</span><span class=\\"token punctuation\\">;</span>
<span class=\\"token punctuation\\">}</span></code></pre>
<aside class=\\"aside flow note\\">
    <div class=\\"aside__content\\">
<p>This configuration file tells 11ty what to do.</p>
<p>Setting the <code>input</code> directory to <code>src</code> tells 11ty where to look for changes, this is our working directory.</p>
<p>When changes are detected, 11ty builds the site and outputs it to the <code>output</code> directory <code>public</code> which is where the static html/css/img files are served from, amazing!</p>
</div>
  </aside>
<h3 id=\\"gitignore\\"><a class=\\"heading-anchor\\" href=\\"https://flamedfury.com/guides/11ty-homepage-neocities-2026/#gitignore\\">.gitignore</a></h3>
<p>As we’re going to be keeping our homepage code in version control, create a <code>.gitignore</code> file in the project root:</p>
<pre class=\\"language-bash\\"><code class=\\"language-bash\\"><span class=\\"token function\\">touch</span> .gitignore</code></pre>
<p>Open the file in VSCodium and add the following and save:</p>
<pre class=\\"language-md\\"><code class=\\"language-md\\"><span class=\\"token title important\\"><span class=\\"token punctuation\\">#</span> dependencies installed by npm</span>

node_modules

<span class=\\"token title important\\"><span class=\\"token punctuation\\">#</span> build artefacts</span>

public</code></pre>
<aside class=\\"aside flow note\\">
    <div class=\\"aside__content\\">
<p>The .gitignore file is a text file that tells Git which files or folders to ignore in a project.</p>
<p>In this case, our <code>.gitignore</code> file tells git to ignore the <code>node_modules</code> directory and the <code>public</code> directory where our static files are built locally.</p>
</div>
  </aside>
<h2 id=\\"start-building-the-homepage\\"><a class=\\"heading-anchor\\" href=\\"https://flamedfury.com/guides/11ty-homepage-neocities-2026/#start-building-the-homepage\\">Start building the homepage</a></h2>
<p>Now comes the fun part, building our homepage. 11ty supports a number of templating languages, but the two you’ll reach for most are Markdown and plain HTML. Markdown is the popular choice for content like blog posts: you just write, without <code>&lt;html&gt;</code> tags getting in the way. HTML is handy when you need precise structure. The best part is you can drop HTML straight into a Markdown file and 11ty renders it correctly, so it’s never one or the other.</p>
<p>For the pages that make up the site’s structure (home, about, links, contact) we’ll use HTML, because it maps neatly onto the layouts and partials we’re about to build. When we get to the blog, we’ll write the posts in Markdown, where it shines. Use whichever fits the job.</p>
<aside class=\\"aside flow tip\\">
    <div class=\\"aside__content\\">
Want to push <a href=\\"https://www.markdownguide.org/\\">Markdown</a> further? Once you've finished the guide, try rewriting one of the HTML pages as a <code>.md</code> file. The <a href=\\"https://www.11ty.dev/docs/languages/markdown/\\">11ty Markdown docs</a> are a good place to start.
</div>
  </aside>
<p>Create a <code>src</code> directory at the project root and cd into it:</p>
<pre class=\\"language-bash\\"><code class=\\"language-bash\\"><span class=\\"token function\\">mkdir</span> src <span class=\\"token operator\\">&amp;&amp;</span> <span class=\\"token builtin class-name\\">cd</span> src</code></pre>
<p>Create an <code>index.html</code> file in the terminal or VSCodium:</p>
<pre class=\\"language-bash\\"><code class=\\"language-bash\\"><span class=\\"token function\\">touch</span> index.html</code></pre>
<p>Open the file and add some content:</p>
<pre class=\\"language-html\\"><code class=\\"language-html\\"><span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>html</span><span class=\\"token punctuation\\">></span></span>
  <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>head</span><span class=\\"token punctuation\\">></span></span>
    <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>title</span><span class=\\"token punctuation\\">></span></span>My New 11ty Homepage on Neocities!<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>title</span><span class=\\"token punctuation\\">></span></span>
  <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>head</span><span class=\\"token punctuation\\">></span></span>
  <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>body</span><span class=\\"token punctuation\\">></span></span>
    <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>h1</span><span class=\\"token punctuation\\">></span></span>Hello World<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>h1</span><span class=\\"token punctuation\\">></span></span>

    <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>p</span><span class=\\"token punctuation\\">></span></span>
      Check out your cool new static site built with
      <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>a</span> <span class=\\"token attr-name\\">href</span><span class=\\"token attr-value\\"><span class=\\"token punctuation attr-equals\\">=</span><span class=\\"token punctuation\\">\\"</span>https://11ty.dev<span class=\\"token punctuation\\">\\"</span></span><span class=\\"token punctuation\\">></span></span>11ty<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>a</span><span class=\\"token punctuation\\">></span></span> on
      <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>a</span> <span class=\\"token attr-name\\">href</span><span class=\\"token attr-value\\"><span class=\\"token punctuation attr-equals\\">=</span><span class=\\"token punctuation\\">\\"</span>https://neocities.org/<span class=\\"token punctuation\\">\\"</span></span><span class=\\"token punctuation\\">></span></span>Neocities<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>a</span><span class=\\"token punctuation\\">></span></span>.
    <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>p</span><span class=\\"token punctuation\\">></span></span>
  <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>body</span><span class=\\"token punctuation\\">></span></span>
<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>html</span><span class=\\"token punctuation\\">></span></span></code></pre>
<p>Now from the terminal start 11ty:</p>
<pre class=\\"language-bash\\"><code class=\\"language-bash\\"><span class=\\"token function\\">npm</span> start</code></pre>
<p>If everything has been configured right so far you should see the following:</p>
<pre class=\\"language-bash\\"><code class=\\"language-bash\\"><span class=\\"token operator\\">></span> 11ty-neocities@1.0.0 start
<span class=\\"token operator\\">></span> npx @11ty/eleventy <span class=\\"token parameter variable\\">--serve</span>

<span class=\\"token punctuation\\">[</span>11ty<span class=\\"token punctuation\\">]</span> Writing public/index.html from ./src/index.html <span class=\\"token punctuation\\">(</span>liquid<span class=\\"token punctuation\\">)</span>
<span class=\\"token punctuation\\">[</span>11ty<span class=\\"token punctuation\\">]</span> Wrote <span class=\\"token number\\">1</span> <span class=\\"token function\\">file</span> <span class=\\"token keyword\\">in</span> <span class=\\"token number\\">0.03</span> seconds <span class=\\"token punctuation\\">(</span>v3.1.6<span class=\\"token punctuation\\">)</span>
<span class=\\"token punctuation\\">[</span>11ty<span class=\\"token punctuation\\">]</span> Watching…
<span class=\\"token punctuation\\">[</span>11ty<span class=\\"token punctuation\\">]</span> Server at http://localhost:8080/</code></pre>
<p>Now you can open up <code>http://localhost:8080</code> and check out your new 11ty homepage! It should look like this:</p>
<figure slot=\\"image\\"><picture>   <source type=\\"image/webp\\" srcset=\\"https://flamedfury.com/assets/images/11ty-neocities-2026-01-hello-world-480w.webp 480w, https://flamedfury.com/assets/images/11ty-neocities-2026-01-hello-world-800w.webp 800w, https://flamedfury.com/assets/images/11ty-neocities-2026-01-hello-world-1200w.webp 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" />
  <source type=\\"image/jpeg\\" srcset=\\"https://flamedfury.com/assets/images/11ty-neocities-2026-01-hello-world-480w.jpeg 480w, https://flamedfury.com/assets/images/11ty-neocities-2026-01-hello-world-800w.jpeg 800w, https://flamedfury.com/assets/images/11ty-neocities-2026-01-hello-world-1200w.jpeg 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" /><img src=\\"https://flamedfury.com/assets/images/11ty-neocities-2026-01-hello-world-1200w.jpeg\\" width=\\"1200\\" height=\\"829\\" alt=\\"A plain Hello World page with a heading and a sentence, in the browser's default styling\\" loading=\\"lazy\\" decoding=\\"async\\" eleventy:ignore=\\"\\" /></picture><figcaption>A Basic Hello World HTML Page</figcaption></figure>
<p>Amazing! But what we want to avoid is having to write out the <code>&lt;html&gt;</code> and <code>&lt;head&gt;</code> and <code>&lt;body&gt;</code> tags on each and every page, and be able to include a site header, navigation and footer so we don’t have to copy and paste the changes across every page each time we update.</p>
<p>Let’s checkout templating a layout!</p>
<h3 id=\\"create-a-base-layout\\"><a class=\\"heading-anchor\\" href=\\"https://flamedfury.com/guides/11ty-homepage-neocities-2026/#create-a-base-layout\\">Create a base layout</a></h3>
<p>Create a new directory <code>_includes/</code> in the <code>src/</code> directory and cd into it:</p>
<pre class=\\"language-bash\\"><code class=\\"language-bash\\"><span class=\\"token function\\">mkdir</span> _includes <span class=\\"token operator\\">&amp;&amp;</span> <span class=\\"token builtin class-name\\">cd</span> _includes</code></pre>
<aside class=\\"aside flow note\\">
    <div class=\\"aside__content\\">
In a non-demo situation I would create a <code>layouts/</code> directory under <code>_includes/</code> for better organisation. For the sake of simplicity we'll just keep everything in <code>_includes/</code> for now.
</div>
  </aside>
<p>Create a file <code>base.njk</code> in the terminal or VSCodium:</p>
<pre class=\\"language-bash\\"><code class=\\"language-bash\\"><span class=\\"token function\\">touch</span> base.njk</code></pre>
<p>Open the file and add the following:</p>
<pre class=\\"language-html\\"><code class=\\"language-html\\"><span class=\\"token doctype\\"><span class=\\"token punctuation\\">&lt;!</span><span class=\\"token doctype-tag\\">DOCTYPE</span> <span class=\\"token name\\">html</span><span class=\\"token punctuation\\">></span></span>
<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>html</span> <span class=\\"token attr-name\\">lang</span><span class=\\"token attr-value\\"><span class=\\"token punctuation attr-equals\\">=</span><span class=\\"token punctuation\\">\\"</span>en<span class=\\"token punctuation\\">\\"</span></span><span class=\\"token punctuation\\">></span></span>
  <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>head</span><span class=\\"token punctuation\\">></span></span>
    <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>meta</span> <span class=\\"token attr-name\\">charset</span><span class=\\"token attr-value\\"><span class=\\"token punctuation attr-equals\\">=</span><span class=\\"token punctuation\\">\\"</span>UTF-8<span class=\\"token punctuation\\">\\"</span></span> <span class=\\"token punctuation\\">/></span></span>
    <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>meta</span> <span class=\\"token attr-name\\">name</span><span class=\\"token attr-value\\"><span class=\\"token punctuation attr-equals\\">=</span><span class=\\"token punctuation\\">\\"</span>viewport<span class=\\"token punctuation\\">\\"</span></span> <span class=\\"token attr-name\\">content</span><span class=\\"token attr-value\\"><span class=\\"token punctuation attr-equals\\">=</span><span class=\\"token punctuation\\">\\"</span>width=device-width, initial-scale=1.0<span class=\\"token punctuation\\">\\"</span></span> <span class=\\"token punctuation\\">/></span></span>
    <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>title</span><span class=\\"token punctuation\\">></span></span>{{ title }}<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>title</span><span class=\\"token punctuation\\">></span></span>
  <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>head</span><span class=\\"token punctuation\\">></span></span>
  <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>body</span><span class=\\"token punctuation\\">></span></span>
    <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>header</span><span class=\\"token punctuation\\">></span></span>
      <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>h1</span><span class=\\"token punctuation\\">></span></span>{{ title }}<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>h1</span><span class=\\"token punctuation\\">></span></span>
    <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>header</span><span class=\\"token punctuation\\">></span></span>
    <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>main</span><span class=\\"token punctuation\\">></span></span>{{ content | safe }}<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>main</span><span class=\\"token punctuation\\">></span></span>
  <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>body</span><span class=\\"token punctuation\\">></span></span>
<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>html</span><span class=\\"token punctuation\\">></span></span></code></pre>
<aside class=\\"aside flow note\\">
    <div class=\\"aside__content\\">
<p>We've created <code>base.njk</code> as a Nunjucks template file, hence the <code>.njk</code> file extension. This means we can use Nunjucks' double curly braces for using frontmatter variables.</p>
<p>In our layout template we're calling <code>{{ title }}</code> and <code>{{ content }}</code>.</p>
</div>
  </aside>
<p>Now, head back to the <code>index.html</code> file you created earlier, delete the contents and add some front matter and some content:</p>
<pre class=\\"language-html\\"><code class=\\"language-html\\">---
title: Hello World!
layout: base.njk
---

<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>p</span><span class=\\"token punctuation\\">></span></span>
  Check out your cool new static site built with
  <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>a</span> <span class=\\"token attr-name\\">href</span><span class=\\"token attr-value\\"><span class=\\"token punctuation attr-equals\\">=</span><span class=\\"token punctuation\\">\\"</span>https://11ty.dev<span class=\\"token punctuation\\">\\"</span></span><span class=\\"token punctuation\\">></span></span>11ty<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>a</span><span class=\\"token punctuation\\">></span></span> on
  <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>a</span> <span class=\\"token attr-name\\">href</span><span class=\\"token attr-value\\"><span class=\\"token punctuation attr-equals\\">=</span><span class=\\"token punctuation\\">\\"</span>https://neocities.org/<span class=\\"token punctuation\\">\\"</span></span><span class=\\"token punctuation\\">></span></span>Neocities<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>a</span><span class=\\"token punctuation\\">></span></span>.
<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>p</span><span class=\\"token punctuation\\">></span></span>

<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>p</span><span class=\\"token punctuation\\">></span></span>This homepage template is perfect for:<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>p</span><span class=\\"token punctuation\\">></span></span>

<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>ul</span><span class=\\"token punctuation\\">></span></span>
  <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>li</span><span class=\\"token punctuation\\">></span></span>Creating your own space on the web<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>li</span><span class=\\"token punctuation\\">></span></span>
  <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>li</span><span class=\\"token punctuation\\">></span></span>Expressing yourself<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>li</span><span class=\\"token punctuation\\">></span></span>
  <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>li</span><span class=\\"token punctuation\\">></span></span>Displaying all the gifs you've collected<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>li</span><span class=\\"token punctuation\\">></span></span>
<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>ul</span><span class=\\"token punctuation\\">></span></span>

<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>h2</span><span class=\\"token punctuation\\">></span></span>Why do you want a homepage?<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>h2</span><span class=\\"token punctuation\\">></span></span>
<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>p</span><span class=\\"token punctuation\\">></span></span>The web was made for personal homepages, make this one yours<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>p</span><span class=\\"token punctuation\\">></span></span></code></pre>
<p>If you’ve kept 11ty running and the browser running it should look like this:</p>
<figure slot=\\"image\\"><picture>   <source type=\\"image/webp\\" srcset=\\"https://flamedfury.com/assets/images/11ty-neocities-2026-02-template-480w.webp 480w, https://flamedfury.com/assets/images/11ty-neocities-2026-02-template-800w.webp 800w, https://flamedfury.com/assets/images/11ty-neocities-2026-02-template-1200w.webp 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" />
  <source type=\\"image/jpeg\\" srcset=\\"https://flamedfury.com/assets/images/11ty-neocities-2026-02-template-480w.jpeg 480w, https://flamedfury.com/assets/images/11ty-neocities-2026-02-template-800w.jpeg 800w, https://flamedfury.com/assets/images/11ty-neocities-2026-02-template-1200w.jpeg 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" /><img src=\\"https://flamedfury.com/assets/images/11ty-neocities-2026-02-template-1200w.jpeg\\" width=\\"1200\\" height=\\"829\\" alt=\\"The homepage now rendered through the base layout, showing the title and the homepage content\\" loading=\\"lazy\\" decoding=\\"async\\" eleventy:ignore=\\"\\" /></picture><figcaption>A Basic Hello World HTML Page Using a Template</figcaption></figure>
<p>Amazing! Now lets create the additional pages for our homepage.</p>
<p>Create the following pages in the <code>src/</code> directory with the terminal or VSCodium:</p>
<pre class=\\"language-bash\\"><code class=\\"language-bash\\"><span class=\\"token function\\">touch</span> about.html <span class=\\"token operator\\">&amp;&amp;</span> <span class=\\"token function\\">touch</span> links.html <span class=\\"token operator\\">&amp;&amp;</span> <span class=\\"token function\\">touch</span> contact.html</code></pre>
<p>Open each of them up and add in some front matter and content:</p>
<p>about.html:</p>
<pre class=\\"language-html\\"><code class=\\"language-html\\">---
title: About Me
layout: base.njk
---

<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>p</span><span class=\\"token punctuation\\">></span></span>Heya 👋 this is my homepage.<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>p</span><span class=\\"token punctuation\\">></span></span></code></pre>
<p>links.html:</p>
<pre class=\\"language-html\\"><code class=\\"language-html\\">---
title: Links
layout: base.njk
---

<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>p</span><span class=\\"token punctuation\\">></span></span>These are some of my favourite websites 🔗<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>p</span><span class=\\"token punctuation\\">></span></span>
<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>ul</span><span class=\\"token punctuation\\">></span></span>
  <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>li</span><span class=\\"token punctuation\\">></span></span><span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>a</span> <span class=\\"token attr-name\\">href</span><span class=\\"token attr-value\\"><span class=\\"token punctuation attr-equals\\">=</span><span class=\\"token punctuation\\">\\"</span>https://flamedfury.com<span class=\\"token punctuation\\">\\"</span></span><span class=\\"token punctuation\\">></span></span>fLaMEdFury.com<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>a</span><span class=\\"token punctuation\\">></span></span><span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>li</span><span class=\\"token punctuation\\">></span></span>
  <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>li</span><span class=\\"token punctuation\\">></span></span><span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>a</span> <span class=\\"token attr-name\\">href</span><span class=\\"token attr-value\\"><span class=\\"token punctuation attr-equals\\">=</span><span class=\\"token punctuation\\">\\"</span>https://11ty.dev<span class=\\"token punctuation\\">\\"</span></span><span class=\\"token punctuation\\">></span></span>11ty<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>a</span><span class=\\"token punctuation\\">></span></span><span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>li</span><span class=\\"token punctuation\\">></span></span>
  <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>li</span><span class=\\"token punctuation\\">></span></span><span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>a</span> <span class=\\"token attr-name\\">href</span><span class=\\"token attr-value\\"><span class=\\"token punctuation attr-equals\\">=</span><span class=\\"token punctuation\\">\\"</span>https://neocities.org<span class=\\"token punctuation\\">\\"</span></span><span class=\\"token punctuation\\">></span></span>Neocities<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>a</span><span class=\\"token punctuation\\">></span></span><span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>li</span><span class=\\"token punctuation\\">></span></span>
  <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>li</span><span class=\\"token punctuation\\">></span></span><span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>a</span> <span class=\\"token attr-name\\">href</span><span class=\\"token attr-value\\"><span class=\\"token punctuation attr-equals\\">=</span><span class=\\"token punctuation\\">\\"</span>https://32bit.cafe/<span class=\\"token punctuation\\">\\"</span></span><span class=\\"token punctuation\\">></span></span>The 32-Bit Cafe<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>a</span><span class=\\"token punctuation\\">></span></span><span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>li</span><span class=\\"token punctuation\\">></span></span>
<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>ul</span><span class=\\"token punctuation\\">></span></span></code></pre>
<p>contact.html:</p>
<pre class=\\"language-html\\"><code class=\\"language-html\\">---
title: Contact Me
layout: base.njk
---

<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>p</span><span class=\\"token punctuation\\">></span></span>Heya 👋 this is my contact page<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>p</span><span class=\\"token punctuation\\">></span></span></code></pre>
<p>You should now be able to browse each of these pages if you kept 11ty running on the following urls:</p>
<p><code>http://localhost:8080/about/</code><br />
<code>http://localhost:8080/links/</code><br />
<code>http://localhost:8080/contact/</code></p>
<p>Great stuff, but that’s no use without a navigation! Let’s take a look at <code>partials</code> and create a shared <code>header</code>, <code>navigation</code>, and <code>footer</code> to bring our homepage together.</p>
<h3 id=\\"creating-our-partials\\"><a class=\\"heading-anchor\\" href=\\"https://flamedfury.com/guides/11ty-homepage-neocities-2026/#creating-our-partials\\">Creating our partials</a></h3>
<aside class=\\"aside flow note\\">
    <div class=\\"aside__content\\">
In a non-demo situation I would create a <code>partials/</code> directory under <code>_includes/</code> for better organisation. For the sake of simplicity we'll just keep everything in <code>_includes/</code> for now.
</div>
  </aside>
<p>In the terminal cd into <code>_includes/</code> and create three partial files:</p>
<pre class=\\"language-bash\\"><code class=\\"language-bash\\"><span class=\\"token builtin class-name\\">cd</span> _includes <span class=\\"token operator\\">&amp;&amp;</span> <span class=\\"token function\\">touch</span> header.njk <span class=\\"token operator\\">&amp;&amp;</span> <span class=\\"token function\\">touch</span> navigation.njk <span class=\\"token operator\\">&amp;&amp;</span> <span class=\\"token function\\">touch</span> footer.njk</code></pre>
<p>Open each of them up and add some content:</p>
<p>header.njk:</p>
<pre class=\\"language-html\\"><code class=\\"language-html\\"><span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>h1</span><span class=\\"token punctuation\\">></span></span>Welcome to my Homepage<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>h1</span><span class=\\"token punctuation\\">></span></span></code></pre>
<p>navigation.njk</p>
<pre class=\\"language-html\\"><code class=\\"language-html\\"><span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>a</span> <span class=\\"token attr-name\\">href</span><span class=\\"token attr-value\\"><span class=\\"token punctuation attr-equals\\">=</span><span class=\\"token punctuation\\">\\"</span>/<span class=\\"token punctuation\\">\\"</span></span><span class=\\"token punctuation\\">></span></span>Home<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>a</span><span class=\\"token punctuation\\">></span></span>
<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>a</span> <span class=\\"token attr-name\\">href</span><span class=\\"token attr-value\\"><span class=\\"token punctuation attr-equals\\">=</span><span class=\\"token punctuation\\">\\"</span>/about/<span class=\\"token punctuation\\">\\"</span></span><span class=\\"token punctuation\\">></span></span>About<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>a</span><span class=\\"token punctuation\\">></span></span>
<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>a</span> <span class=\\"token attr-name\\">href</span><span class=\\"token attr-value\\"><span class=\\"token punctuation attr-equals\\">=</span><span class=\\"token punctuation\\">\\"</span>/links/<span class=\\"token punctuation\\">\\"</span></span><span class=\\"token punctuation\\">></span></span>Links<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>a</span><span class=\\"token punctuation\\">></span></span>
<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>a</span> <span class=\\"token attr-name\\">href</span><span class=\\"token attr-value\\"><span class=\\"token punctuation attr-equals\\">=</span><span class=\\"token punctuation\\">\\"</span>/blog/<span class=\\"token punctuation\\">\\"</span></span><span class=\\"token punctuation\\">></span></span>Blog<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>a</span><span class=\\"token punctuation\\">></span></span>
<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>a</span> <span class=\\"token attr-name\\">href</span><span class=\\"token attr-value\\"><span class=\\"token punctuation attr-equals\\">=</span><span class=\\"token punctuation\\">\\"</span>/contact/<span class=\\"token punctuation\\">\\"</span></span><span class=\\"token punctuation\\">></span></span>Contact<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>a</span><span class=\\"token punctuation\\">></span></span></code></pre>
<aside class=\\"aside flow note\\">
    <div class=\\"aside__content\\">
It's important to structure your links with the slashes <code>/</code> on either side of the href <code>/about/</code> to ensure the links are always from the root of the site.
</div>
  </aside>
<p>footer.njk:</p>
<pre class=\\"language-html\\"><code class=\\"language-html\\"><span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>p</span><span class=\\"token punctuation\\">></span></span>This is my footer | © 2026 Me.<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>p</span><span class=\\"token punctuation\\">></span></span></code></pre>
<p>Once our partials are created, open <code>base.njk</code> again and update it to include our new elements and partials:</p>
<p>base.njk:</p>
<pre class=\\"language-html\\"><code class=\\"language-html\\"><span class=\\"token doctype\\"><span class=\\"token punctuation\\">&lt;!</span><span class=\\"token doctype-tag\\">DOCTYPE</span> <span class=\\"token name\\">html</span><span class=\\"token punctuation\\">></span></span>
<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>html</span> <span class=\\"token attr-name\\">lang</span><span class=\\"token attr-value\\"><span class=\\"token punctuation attr-equals\\">=</span><span class=\\"token punctuation\\">\\"</span>en<span class=\\"token punctuation\\">\\"</span></span><span class=\\"token punctuation\\">></span></span>

<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>head</span><span class=\\"token punctuation\\">></span></span>
  <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>meta</span> <span class=\\"token attr-name\\">charset</span><span class=\\"token attr-value\\"><span class=\\"token punctuation attr-equals\\">=</span><span class=\\"token punctuation\\">\\"</span>UTF-8<span class=\\"token punctuation\\">\\"</span></span> <span class=\\"token punctuation\\">/></span></span>
  <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>meta</span> <span class=\\"token attr-name\\">name</span><span class=\\"token attr-value\\"><span class=\\"token punctuation attr-equals\\">=</span><span class=\\"token punctuation\\">\\"</span>viewport<span class=\\"token punctuation\\">\\"</span></span> <span class=\\"token attr-name\\">content</span><span class=\\"token attr-value\\"><span class=\\"token punctuation attr-equals\\">=</span><span class=\\"token punctuation\\">\\"</span>width=device-width, initial-scale=1.0<span class=\\"token punctuation\\">\\"</span></span> <span class=\\"token punctuation\\">/></span></span>

  <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>title</span><span class=\\"token punctuation\\">></span></span>{{ title }}<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>title</span><span class=\\"token punctuation\\">></span></span>
<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>head</span><span class=\\"token punctuation\\">></span></span>

<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>body</span><span class=\\"token punctuation\\">></span></span>
  <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>header</span><span class=\\"token punctuation\\">></span></span>{% include 'header.njk' %}<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>header</span><span class=\\"token punctuation\\">></span></span>

  <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>nav</span><span class=\\"token punctuation\\">></span></span>{% include 'navigation.njk' %}<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>nav</span><span class=\\"token punctuation\\">></span></span>

  <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>main</span><span class=\\"token punctuation\\">></span></span>
    <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>h1</span><span class=\\"token punctuation\\">></span></span>{{ title }}<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>h1</span><span class=\\"token punctuation\\">></span></span>
    {{ content | safe }}
  <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>main</span><span class=\\"token punctuation\\">></span></span>

  <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>footer</span><span class=\\"token punctuation\\">></span></span>{% include 'footer.njk' %}<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>footer</span><span class=\\"token punctuation\\">></span></span>
<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>body</span><span class=\\"token punctuation\\">></span></span>

<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>html</span><span class=\\"token punctuation\\">></span></span></code></pre>
<p>If you’ve kept 11ty running and the browser running it should look like this:</p>
<figure slot=\\"image\\"><picture>   <source type=\\"image/webp\\" srcset=\\"https://flamedfury.com/assets/images/11ty-neocities-2026-03-partials-480w.webp 480w, https://flamedfury.com/assets/images/11ty-neocities-2026-03-partials-800w.webp 800w, https://flamedfury.com/assets/images/11ty-neocities-2026-03-partials-1200w.webp 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" />
  <source type=\\"image/jpeg\\" srcset=\\"https://flamedfury.com/assets/images/11ty-neocities-2026-03-partials-480w.jpeg 480w, https://flamedfury.com/assets/images/11ty-neocities-2026-03-partials-800w.jpeg 800w, https://flamedfury.com/assets/images/11ty-neocities-2026-03-partials-1200w.jpeg 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" /><img src=\\"https://flamedfury.com/assets/images/11ty-neocities-2026-03-partials-1200w.jpeg\\" width=\\"1200\\" height=\\"829\\" alt=\\"The homepage with the shared header, navigation links and footer added from the partial files\\" loading=\\"lazy\\" decoding=\\"async\\" eleventy:ignore=\\"\\" /></picture><figcaption>A Basic Hello World HTML Page Using a Template and Partials</figcaption></figure>
<p>Amazing! Now lets add the blog.</p>
<h3 id=\\"creating-the-blog\\"><a class=\\"heading-anchor\\" href=\\"https://flamedfury.com/guides/11ty-homepage-neocities-2026/#creating-the-blog\\">Creating the blog</a></h3>
<p>Blog posts are mostly prose, so this is where Markdown earns its keep. We’ll write the posts as <code>.md</code> files and let 11ty turn them into pages.</p>
<p>Create a new directory <code>blog</code> in the <code>src</code> directory and cd into it:</p>
<pre class=\\"language-bash\\"><code class=\\"language-bash\\"><span class=\\"token function\\">mkdir</span> blog <span class=\\"token operator\\">&amp;&amp;</span> <span class=\\"token builtin class-name\\">cd</span> blog</code></pre>
<p>Create the following files in the <code>src/blog</code> directory with the terminal or VSCodium:</p>
<pre class=\\"language-bash\\"><code class=\\"language-bash\\"><span class=\\"token function\\">touch</span> my-first-post.md <span class=\\"token operator\\">&amp;&amp;</span> <span class=\\"token function\\">touch</span> my-second-post.md <span class=\\"token operator\\">&amp;&amp;</span> <span class=\\"token function\\">touch</span> my-third-post.md <span class=\\"token operator\\">&amp;&amp;</span> <span class=\\"token function\\">touch</span> blog.json</code></pre>
<p>Awesome, Open each of them up in VSCodium and add the following:</p>
<p><a href=\\"http://my-first-post.md/\\" rel=\\"noopener\\">my-first-post.md</a>:</p>
<pre class=\\"language-markdown\\"><code class=\\"language-markdown\\"><span class=\\"token front-matter-block\\"><span class=\\"token punctuation\\">---</span>
<span class=\\"token front-matter yaml language-yaml\\"><span class=\\"token key atrule\\">title</span><span class=\\"token punctuation\\">:</span> My First Blog Post</span>
<span class=\\"token punctuation\\">---</span></span>

This is my first blog post</code></pre>
<p><a href=\\"http://my-second-post.md/\\" rel=\\"noopener\\">my-second-post.md</a>:</p>
<pre class=\\"language-markdown\\"><code class=\\"language-markdown\\"><span class=\\"token front-matter-block\\"><span class=\\"token punctuation\\">---</span>
<span class=\\"token front-matter yaml language-yaml\\"><span class=\\"token key atrule\\">title</span><span class=\\"token punctuation\\">:</span> My Second Blog Post</span>
<span class=\\"token punctuation\\">---</span></span>

This is my second blog post</code></pre>
<p><a href=\\"http://my-third-post.md/\\" rel=\\"noopener\\">my-third-post.md</a></p>
<pre class=\\"language-markdown\\"><code class=\\"language-markdown\\"><span class=\\"token front-matter-block\\"><span class=\\"token punctuation\\">---</span>
<span class=\\"token front-matter yaml language-yaml\\"><span class=\\"token key atrule\\">title</span><span class=\\"token punctuation\\">:</span> My Third Blog Post</span>
<span class=\\"token punctuation\\">---</span></span>

This is my third and final blog post</code></pre>
<p>blog.json</p>
<pre class=\\"language-json\\"><code class=\\"language-json\\"><span class=\\"token punctuation\\">{</span>
  <span class=\\"token property\\">\\"layout\\"</span><span class=\\"token operator\\">:</span> <span class=\\"token string\\">\\"blog\\"</span>
<span class=\\"token punctuation\\">}</span></code></pre>
<aside class=\\"aside flow note\\">
    <div class=\\"aside__content\\">
What we've done here with the directory data file <code>blog.json</code> is made it so that every blog post in the <code>/blog/</code> directory has the <code>blog.njk</code> layout applied without having to include it in each post's front matter.
</div>
  </aside>
<p>We better create a blog layout so it renders!</p>
<p>Head back to the <code>_includes</code> directory to create a new layout file:</p>
<pre class=\\"language-bash\\"><code class=\\"language-bash\\"><span class=\\"token builtin class-name\\">cd</span> <span class=\\"token punctuation\\">..</span>/_includes <span class=\\"token operator\\">&amp;&amp;</span> <span class=\\"token function\\">touch</span> blog.njk</code></pre>
<p>Open <code>blog.njk</code> up in VSCodium and add the following:</p>
<p>blog.njk:</p>
<pre class=\\"language-html\\"><code class=\\"language-html\\">---
layout: base.njk
---

<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>article</span><span class=\\"token punctuation\\">></span></span>{{ content | safe }}<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>article</span><span class=\\"token punctuation\\">></span></span></code></pre>
<aside class=\\"aside flow note\\">
    <div class=\\"aside__content\\">
What we've done here is called layout chaining. This is an 11ty feature that lets us extend a child layout from our base layout. That way if we make changes to our <code>base.njk</code> layout file, the child layouts like <code>blog.njk</code> get the same changes.
</div>
  </aside>
<p>Check that your blog posts are loading:</p>
<ul class=\\"list\\">
<li><a href=\\"http://localhost:8080/blog/my-first-post/\\" rel=\\"noopener\\">http://localhost:8080/blog/my-first-post/</a></li>
<li><a href=\\"http://localhost:8080/blog/my-second-post/\\" rel=\\"noopener\\">http://localhost:8080/blog/my-second-post/</a></li>
<li><a href=\\"http://localhost:8080/blog/my-third-post/\\" rel=\\"noopener\\">http://localhost:8080/blog/my-third-post/</a></li>
</ul>
<p>Amazing right? But to make it a blog, we need a blog page that lists all of our blog posts. We can do this with a <code>tags</code> collection:</p>
<p>Open <code>blog.json</code> again and add a key called <code>tags</code> with a value of <code>blog</code>:</p>
<p>blog.json:</p>
<pre class=\\"language-json\\"><code class=\\"language-json\\"><span class=\\"token punctuation\\">{</span>
  <span class=\\"token property\\">\\"layout\\"</span><span class=\\"token operator\\">:</span> <span class=\\"token string\\">\\"blog\\"</span><span class=\\"token punctuation\\">,</span>
  <span class=\\"token property\\">\\"tags\\"</span><span class=\\"token operator\\">:</span> <span class=\\"token string\\">\\"blog\\"</span>
<span class=\\"token punctuation\\">}</span></code></pre>
<p>Now 11ty has created a collection called <code>blog</code> and all we have to do is list it.</p>
<p>Head back to the <code>src/</code> directory and create a <code>blog.html</code> file:</p>
<pre class=\\"language-bash\\"><code class=\\"language-bash\\"><span class=\\"token builtin class-name\\">cd</span> <span class=\\"token punctuation\\">..</span> <span class=\\"token operator\\">&amp;&amp;</span> <span class=\\"token function\\">touch</span> blog.html</code></pre>
<p>Open it and add the following:</p>
<p>blog.html:</p>
<pre class=\\"language-html\\"><code class=\\"language-html\\">---
title: This Is My Blog
layout: base.njk
---

These are all of my amazing blog posts, enjoy!
<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>ul</span><span class=\\"token punctuation\\">></span></span>
  {% for post in collections.blog | reverse %}
  <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>li</span><span class=\\"token punctuation\\">></span></span>
    <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>a</span> <span class=\\"token attr-name\\">href</span><span class=\\"token attr-value\\"><span class=\\"token punctuation attr-equals\\">=</span><span class=\\"token punctuation\\">\\"</span>{{ post.url }}<span class=\\"token punctuation\\">\\"</span></span><span class=\\"token punctuation\\">></span></span>{{ post.data.title }}<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>a</span><span class=\\"token punctuation\\">></span></span>
  <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>li</span><span class=\\"token punctuation\\">></span></span>
  {% endfor %}
<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>ul</span><span class=\\"token punctuation\\">></span></span></code></pre>
<p>If you’ve kept 11ty running and the browser running it should look like this:</p>
<figure slot=\\"image\\"><picture>   <source type=\\"image/webp\\" srcset=\\"https://flamedfury.com/assets/images/11ty-neocities-2026-04-blog-list-480w.webp 480w, https://flamedfury.com/assets/images/11ty-neocities-2026-04-blog-list-800w.webp 800w, https://flamedfury.com/assets/images/11ty-neocities-2026-04-blog-list-1200w.webp 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" />
  <source type=\\"image/jpeg\\" srcset=\\"https://flamedfury.com/assets/images/11ty-neocities-2026-04-blog-list-480w.jpeg 480w, https://flamedfury.com/assets/images/11ty-neocities-2026-04-blog-list-800w.jpeg 800w, https://flamedfury.com/assets/images/11ty-neocities-2026-04-blog-list-1200w.jpeg 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" /><img src=\\"https://flamedfury.com/assets/images/11ty-neocities-2026-04-blog-list-1200w.jpeg\\" width=\\"1200\\" height=\\"829\\" alt=\\"The blog page listing the three blog posts as links\\" loading=\\"lazy\\" decoding=\\"async\\" eleventy:ignore=\\"\\" /></picture><figcaption>A Basic Blog List Page</figcaption></figure>
<p>Amazing huh?</p>
<h2 id=\\"add-some-styles\\"><a class=\\"heading-anchor\\" href=\\"https://flamedfury.com/guides/11ty-homepage-neocities-2026/#add-some-styles\\">Add some styles</a></h2>
<p>Great, so far we have a fully functional home page, but it doesn’t look quite right. We need a style sheet. You can use the one below as an example, it’s basic styling with some modern techniques, or just throw in your own!</p>
<p>Create a new <code>css</code> directory in <code>src</code>, cd into it and create <code>styles.css</code>:</p>
<pre class=\\"language-bash\\"><code class=\\"language-bash\\"><span class=\\"token function\\">mkdir</span> css <span class=\\"token operator\\">&amp;&amp;</span> <span class=\\"token builtin class-name\\">cd</span> css <span class=\\"token operator\\">&amp;&amp;</span> <span class=\\"token function\\">touch</span> styles.css</code></pre>
<p>Open <code>styles.css</code> in VSCodium and add the following:</p>
<p>styles.css:</p>
<pre class=\\"language-css\\"><code class=\\"language-css\\"><span class=\\"token selector\\">:root</span> <span class=\\"token punctuation\\">{</span>
  <span class=\\"token comment\\">/* Let the browser handle light and dark automatically */</span>
  <span class=\\"token property\\">color-scheme</span><span class=\\"token punctuation\\">:</span> light dark<span class=\\"token punctuation\\">;</span>

  <span class=\\"token comment\\">/* Two system-font stacks: sans for body, serif for headings */</span>
  <span class=\\"token property\\">--font-body</span><span class=\\"token punctuation\\">:</span> system-ui<span class=\\"token punctuation\\">,</span> sans-serif<span class=\\"token punctuation\\">;</span>
  <span class=\\"token property\\">--font-head</span><span class=\\"token punctuation\\">:</span> ui-serif<span class=\\"token punctuation\\">,</span> Georgia<span class=\\"token punctuation\\">,</span> <span class=\\"token string\\">\\"Iowan Old Style\\"</span><span class=\\"token punctuation\\">,</span> serif<span class=\\"token punctuation\\">;</span>

  <span class=\\"token comment\\">/* Purple/pink palette. light-dark() picks the light value first, dark second */</span>
  <span class=\\"token property\\">--bg</span><span class=\\"token punctuation\\">:</span> <span class=\\"token function\\">light-dark</span><span class=\\"token punctuation\\">(</span>#fdf4fa<span class=\\"token punctuation\\">,</span> #1a141f<span class=\\"token punctuation\\">)</span><span class=\\"token punctuation\\">;</span>
  <span class=\\"token property\\">--text</span><span class=\\"token punctuation\\">:</span> <span class=\\"token function\\">light-dark</span><span class=\\"token punctuation\\">(</span>#2a1f2d<span class=\\"token punctuation\\">,</span> #ece0ef<span class=\\"token punctuation\\">)</span><span class=\\"token punctuation\\">;</span>
  <span class=\\"token property\\">--muted</span><span class=\\"token punctuation\\">:</span> <span class=\\"token function\\">light-dark</span><span class=\\"token punctuation\\">(</span>#6f5d77<span class=\\"token punctuation\\">,</span> #a892b0<span class=\\"token punctuation\\">)</span><span class=\\"token punctuation\\">;</span>
  <span class=\\"token property\\">--accent</span><span class=\\"token punctuation\\">:</span> <span class=\\"token function\\">light-dark</span><span class=\\"token punctuation\\">(</span>#a21caf<span class=\\"token punctuation\\">,</span> #ff7ab6<span class=\\"token punctuation\\">)</span><span class=\\"token punctuation\\">;</span>
  <span class=\\"token property\\">--border</span><span class=\\"token punctuation\\">:</span> <span class=\\"token function\\">light-dark</span><span class=\\"token punctuation\\">(</span>#ecd9ec<span class=\\"token punctuation\\">,</span> #3a2f40<span class=\\"token punctuation\\">)</span><span class=\\"token punctuation\\">;</span>
<span class=\\"token punctuation\\">}</span>

<span class=\\"token selector\\">*,
*::before,
*::after</span> <span class=\\"token punctuation\\">{</span>
  <span class=\\"token property\\">box-sizing</span><span class=\\"token punctuation\\">:</span> border-box<span class=\\"token punctuation\\">;</span>
<span class=\\"token punctuation\\">}</span>

<span class=\\"token selector\\">body</span> <span class=\\"token punctuation\\">{</span>
  <span class=\\"token property\\">font-family</span><span class=\\"token punctuation\\">:</span> <span class=\\"token function\\">var</span><span class=\\"token punctuation\\">(</span>--font-body<span class=\\"token punctuation\\">)</span><span class=\\"token punctuation\\">;</span>
  <span class=\\"token property\\">color</span><span class=\\"token punctuation\\">:</span> <span class=\\"token function\\">var</span><span class=\\"token punctuation\\">(</span>--text<span class=\\"token punctuation\\">)</span><span class=\\"token punctuation\\">;</span>
  <span class=\\"token property\\">background</span><span class=\\"token punctuation\\">:</span> <span class=\\"token function\\">var</span><span class=\\"token punctuation\\">(</span>--bg<span class=\\"token punctuation\\">)</span><span class=\\"token punctuation\\">;</span>
  <span class=\\"token property\\">font-size</span><span class=\\"token punctuation\\">:</span> 1.15rem<span class=\\"token punctuation\\">;</span>
  <span class=\\"token property\\">line-height</span><span class=\\"token punctuation\\">:</span> 1.6<span class=\\"token punctuation\\">;</span>
  <span class=\\"token property\\">max-width</span><span class=\\"token punctuation\\">:</span> 40rem<span class=\\"token punctuation\\">;</span>
  <span class=\\"token property\\">margin-inline</span><span class=\\"token punctuation\\">:</span> auto<span class=\\"token punctuation\\">;</span>
  <span class=\\"token property\\">padding</span><span class=\\"token punctuation\\">:</span> 0 1rem<span class=\\"token punctuation\\">;</span>
<span class=\\"token punctuation\\">}</span>

<span class=\\"token comment\\">/* Site header */</span>
<span class=\\"token selector\\">header</span> <span class=\\"token punctuation\\">{</span>
  <span class=\\"token property\\">text-align</span><span class=\\"token punctuation\\">:</span> center<span class=\\"token punctuation\\">;</span>
  <span class=\\"token property\\">padding-block</span><span class=\\"token punctuation\\">:</span> 2rem<span class=\\"token punctuation\\">;</span>
<span class=\\"token punctuation\\">}</span>

<span class=\\"token comment\\">/* Navigation */</span>
<span class=\\"token selector\\">nav</span> <span class=\\"token punctuation\\">{</span>
  <span class=\\"token property\\">display</span><span class=\\"token punctuation\\">:</span> flex<span class=\\"token punctuation\\">;</span>
  <span class=\\"token property\\">flex-wrap</span><span class=\\"token punctuation\\">:</span> wrap<span class=\\"token punctuation\\">;</span>
  <span class=\\"token property\\">justify-content</span><span class=\\"token punctuation\\">:</span> center<span class=\\"token punctuation\\">;</span>
  <span class=\\"token property\\">gap</span><span class=\\"token punctuation\\">:</span> 1.5rem<span class=\\"token punctuation\\">;</span>
  <span class=\\"token property\\">padding-bottom</span><span class=\\"token punctuation\\">:</span> 1.5rem<span class=\\"token punctuation\\">;</span>
  <span class=\\"token property\\">border-bottom</span><span class=\\"token punctuation\\">:</span> 1px solid <span class=\\"token function\\">var</span><span class=\\"token punctuation\\">(</span>--border<span class=\\"token punctuation\\">)</span><span class=\\"token punctuation\\">;</span>
<span class=\\"token punctuation\\">}</span>

<span class=\\"token comment\\">/* Main content */</span>
<span class=\\"token selector\\">main</span> <span class=\\"token punctuation\\">{</span>
  <span class=\\"token property\\">padding-block</span><span class=\\"token punctuation\\">:</span> 2rem<span class=\\"token punctuation\\">;</span>
<span class=\\"token punctuation\\">}</span>

<span class=\\"token comment\\">/* Site footer */</span>
<span class=\\"token selector\\">footer</span> <span class=\\"token punctuation\\">{</span>
  <span class=\\"token property\\">margin-top</span><span class=\\"token punctuation\\">:</span> 4rem<span class=\\"token punctuation\\">;</span>
  <span class=\\"token property\\">padding-block</span><span class=\\"token punctuation\\">:</span> 2rem<span class=\\"token punctuation\\">;</span>
  <span class=\\"token property\\">text-align</span><span class=\\"token punctuation\\">:</span> center<span class=\\"token punctuation\\">;</span>
  <span class=\\"token property\\">color</span><span class=\\"token punctuation\\">:</span> <span class=\\"token function\\">var</span><span class=\\"token punctuation\\">(</span>--muted<span class=\\"token punctuation\\">)</span><span class=\\"token punctuation\\">;</span>
  <span class=\\"token property\\">font-size</span><span class=\\"token punctuation\\">:</span> 0.9rem<span class=\\"token punctuation\\">;</span>
  <span class=\\"token property\\">border-top</span><span class=\\"token punctuation\\">:</span> 1px solid <span class=\\"token function\\">var</span><span class=\\"token punctuation\\">(</span>--border<span class=\\"token punctuation\\">)</span><span class=\\"token punctuation\\">;</span>
<span class=\\"token punctuation\\">}</span>

<span class=\\"token comment\\">/* Links */</span>
<span class=\\"token selector\\">a</span> <span class=\\"token punctuation\\">{</span>
  <span class=\\"token property\\">color</span><span class=\\"token punctuation\\">:</span> <span class=\\"token function\\">var</span><span class=\\"token punctuation\\">(</span>--accent<span class=\\"token punctuation\\">)</span><span class=\\"token punctuation\\">;</span>
  <span class=\\"token property\\">text-underline-offset</span><span class=\\"token punctuation\\">:</span> 0.18em<span class=\\"token punctuation\\">;</span>
<span class=\\"token punctuation\\">}</span>

<span class=\\"token selector\\">a:hover</span> <span class=\\"token punctuation\\">{</span>
  <span class=\\"token property\\">text-decoration</span><span class=\\"token punctuation\\">:</span> none<span class=\\"token punctuation\\">;</span>
<span class=\\"token punctuation\\">}</span>

<span class=\\"token comment\\">/* Headings */</span>
<span class=\\"token selector\\">h1,
h2</span> <span class=\\"token punctuation\\">{</span>
  <span class=\\"token property\\">font-family</span><span class=\\"token punctuation\\">:</span> <span class=\\"token function\\">var</span><span class=\\"token punctuation\\">(</span>--font-head<span class=\\"token punctuation\\">)</span><span class=\\"token punctuation\\">;</span>
  <span class=\\"token property\\">line-height</span><span class=\\"token punctuation\\">:</span> 1.1<span class=\\"token punctuation\\">;</span>
<span class=\\"token punctuation\\">}</span>

<span class=\\"token selector\\">h1</span> <span class=\\"token punctuation\\">{</span>
  <span class=\\"token property\\">font-size</span><span class=\\"token punctuation\\">:</span> 2.5rem<span class=\\"token punctuation\\">;</span>
<span class=\\"token punctuation\\">}</span>

<span class=\\"token selector\\">h2</span> <span class=\\"token punctuation\\">{</span>
  <span class=\\"token property\\">font-size</span><span class=\\"token punctuation\\">:</span> 1.8rem<span class=\\"token punctuation\\">;</span>
  <span class=\\"token property\\">margin-top</span><span class=\\"token punctuation\\">:</span> 2.5rem<span class=\\"token punctuation\\">;</span>
<span class=\\"token punctuation\\">}</span></code></pre>
<aside class=\\"aside flow note\\">
    <div class=\\"aside__content\\">
This is a small, dependency-free stylesheet you fully own. Tweak the custom properties at the top to make it yours. It leans on two system-font stacks, a sans for body text and a serif for headings, so there's nothing to download. The <code>light-dark()</code> function (paired with <code>color-scheme</code>) gives us automatic light and dark themes from a single set of variables, no media queries required. It's well supported in modern browsers.
</div>
  </aside>
<p>Now we need to include the style sheet in our <code>base.njk</code> layout file. Open it up and add <code>&lt;link rel=&quot;stylesheet&quot; href=&quot;/css/styles.css&quot; /&gt;</code> to the <code>&lt;head&gt;</code>:</p>
<p>_includes/base.njk:</p>
<pre class=\\"language-html\\"><code class=\\"language-html\\"><span class=\\"token doctype\\"><span class=\\"token punctuation\\">&lt;!</span><span class=\\"token doctype-tag\\">DOCTYPE</span> <span class=\\"token name\\">html</span><span class=\\"token punctuation\\">></span></span>
<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>html</span> <span class=\\"token attr-name\\">lang</span><span class=\\"token attr-value\\"><span class=\\"token punctuation attr-equals\\">=</span><span class=\\"token punctuation\\">\\"</span>en<span class=\\"token punctuation\\">\\"</span></span><span class=\\"token punctuation\\">></span></span>

<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>head</span><span class=\\"token punctuation\\">></span></span>
  <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>meta</span> <span class=\\"token attr-name\\">charset</span><span class=\\"token attr-value\\"><span class=\\"token punctuation attr-equals\\">=</span><span class=\\"token punctuation\\">\\"</span>UTF-8<span class=\\"token punctuation\\">\\"</span></span> <span class=\\"token punctuation\\">/></span></span>
  <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>meta</span> <span class=\\"token attr-name\\">name</span><span class=\\"token attr-value\\"><span class=\\"token punctuation attr-equals\\">=</span><span class=\\"token punctuation\\">\\"</span>viewport<span class=\\"token punctuation\\">\\"</span></span> <span class=\\"token attr-name\\">content</span><span class=\\"token attr-value\\"><span class=\\"token punctuation attr-equals\\">=</span><span class=\\"token punctuation\\">\\"</span>width=device-width, initial-scale=1.0<span class=\\"token punctuation\\">\\"</span></span> <span class=\\"token punctuation\\">/></span></span>
  <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>link</span> <span class=\\"token attr-name\\">rel</span><span class=\\"token attr-value\\"><span class=\\"token punctuation attr-equals\\">=</span><span class=\\"token punctuation\\">\\"</span>stylesheet<span class=\\"token punctuation\\">\\"</span></span> <span class=\\"token attr-name\\">href</span><span class=\\"token attr-value\\"><span class=\\"token punctuation attr-equals\\">=</span><span class=\\"token punctuation\\">\\"</span>/css/styles.css<span class=\\"token punctuation\\">\\"</span></span> <span class=\\"token punctuation\\">/></span></span>
  <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>title</span><span class=\\"token punctuation\\">></span></span>{{ title }}<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>title</span><span class=\\"token punctuation\\">></span></span>
<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>head</span><span class=\\"token punctuation\\">></span></span>

<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>body</span><span class=\\"token punctuation\\">></span></span>
  <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>header</span><span class=\\"token punctuation\\">></span></span>{% include 'header.njk' %}<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>header</span><span class=\\"token punctuation\\">></span></span>

  <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>nav</span><span class=\\"token punctuation\\">></span></span>{% include 'navigation.njk' %}<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>nav</span><span class=\\"token punctuation\\">></span></span>

  <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>main</span><span class=\\"token punctuation\\">></span></span>
    <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>h1</span><span class=\\"token punctuation\\">></span></span>{{ title }}<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>h1</span><span class=\\"token punctuation\\">></span></span>
    {{ content | safe }}
  <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>main</span><span class=\\"token punctuation\\">></span></span>

  <span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;</span>footer</span><span class=\\"token punctuation\\">></span></span>{% include 'footer.njk' %}<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>footer</span><span class=\\"token punctuation\\">></span></span>
<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>body</span><span class=\\"token punctuation\\">></span></span>

<span class=\\"token tag\\"><span class=\\"token tag\\"><span class=\\"token punctuation\\">&lt;/</span>html</span><span class=\\"token punctuation\\">></span></span></code></pre>
<p>You would have noticed that the stylesheet hasn’t been applied, we have to do one more thing in <code>eleventy.config.js</code>, something called file passthrough copy.</p>
<p>Open <code>eleventy.config.js</code> in VSCodium and add the following:</p>
<pre class=\\"language-js\\"><code class=\\"language-js\\"><span class=\\"token keyword\\">export</span> <span class=\\"token keyword\\">default</span> <span class=\\"token keyword\\">function</span> <span class=\\"token punctuation\\">(</span><span class=\\"token parameter\\">eleventyConfig</span><span class=\\"token punctuation\\">)</span> <span class=\\"token punctuation\\">{</span>
  eleventyConfig<span class=\\"token punctuation\\">.</span><span class=\\"token function\\">addPassthroughCopy</span><span class=\\"token punctuation\\">(</span><span class=\\"token string\\">\\"./src/css\\"</span><span class=\\"token punctuation\\">)</span><span class=\\"token punctuation\\">;</span>

  <span class=\\"token keyword\\">return</span> <span class=\\"token punctuation\\">{</span>
    <span class=\\"token literal-property property\\">dir</span><span class=\\"token operator\\">:</span> <span class=\\"token punctuation\\">{</span>
      <span class=\\"token literal-property property\\">input</span><span class=\\"token operator\\">:</span> <span class=\\"token string\\">\\"src\\"</span><span class=\\"token punctuation\\">,</span>
      <span class=\\"token literal-property property\\">output</span><span class=\\"token operator\\">:</span> <span class=\\"token string\\">\\"public\\"</span><span class=\\"token punctuation\\">,</span>
      <span class=\\"token literal-property property\\">includes</span><span class=\\"token operator\\">:</span> <span class=\\"token string\\">\\"_includes\\"</span><span class=\\"token punctuation\\">,</span>
    <span class=\\"token punctuation\\">}</span><span class=\\"token punctuation\\">,</span>
  <span class=\\"token punctuation\\">}</span><span class=\\"token punctuation\\">;</span>
<span class=\\"token punctuation\\">}</span></code></pre>
<aside class=\\"aside flow note\\">
    <div class=\\"aside__content\\">
Passthrough copy is used for passing through static asset files such as stylesheets, images, fonts, and JavaScript files.
</div>
  </aside>
<p>Because this will come up we may as well create the directories and add in the configuration for our images, fonts and JavaScript files.</p>
<p>Create the following directories in <code>src</code>:</p>
<pre class=\\"language-bash\\"><code class=\\"language-bash\\"><span class=\\"token function\\">mkdir</span> img <span class=\\"token operator\\">&amp;&amp;</span> <span class=\\"token function\\">mkdir</span> fonts <span class=\\"token operator\\">&amp;&amp;</span> <span class=\\"token function\\">mkdir</span> js</code></pre>
<p>Update <code>eleventy.config.js</code> again:</p>
<pre class=\\"language-js\\"><code class=\\"language-js\\"><span class=\\"token keyword\\">export</span> <span class=\\"token keyword\\">default</span> <span class=\\"token keyword\\">function</span> <span class=\\"token punctuation\\">(</span><span class=\\"token parameter\\">eleventyConfig</span><span class=\\"token punctuation\\">)</span> <span class=\\"token punctuation\\">{</span>
  eleventyConfig<span class=\\"token punctuation\\">.</span><span class=\\"token function\\">addPassthroughCopy</span><span class=\\"token punctuation\\">(</span><span class=\\"token string\\">\\"./src/css\\"</span><span class=\\"token punctuation\\">)</span><span class=\\"token punctuation\\">;</span>
  eleventyConfig<span class=\\"token punctuation\\">.</span><span class=\\"token function\\">addPassthroughCopy</span><span class=\\"token punctuation\\">(</span><span class=\\"token string\\">\\"./src/img\\"</span><span class=\\"token punctuation\\">)</span><span class=\\"token punctuation\\">;</span>
  eleventyConfig<span class=\\"token punctuation\\">.</span><span class=\\"token function\\">addPassthroughCopy</span><span class=\\"token punctuation\\">(</span><span class=\\"token string\\">\\"./src/fonts\\"</span><span class=\\"token punctuation\\">)</span><span class=\\"token punctuation\\">;</span>
  eleventyConfig<span class=\\"token punctuation\\">.</span><span class=\\"token function\\">addPassthroughCopy</span><span class=\\"token punctuation\\">(</span><span class=\\"token string\\">\\"./src/js\\"</span><span class=\\"token punctuation\\">)</span><span class=\\"token punctuation\\">;</span>

  <span class=\\"token keyword\\">return</span> <span class=\\"token punctuation\\">{</span>
    <span class=\\"token literal-property property\\">dir</span><span class=\\"token operator\\">:</span> <span class=\\"token punctuation\\">{</span>
      <span class=\\"token literal-property property\\">input</span><span class=\\"token operator\\">:</span> <span class=\\"token string\\">\\"src\\"</span><span class=\\"token punctuation\\">,</span>
      <span class=\\"token literal-property property\\">output</span><span class=\\"token operator\\">:</span> <span class=\\"token string\\">\\"public\\"</span><span class=\\"token punctuation\\">,</span>
      <span class=\\"token literal-property property\\">includes</span><span class=\\"token operator\\">:</span> <span class=\\"token string\\">\\"_includes\\"</span><span class=\\"token punctuation\\">,</span>
    <span class=\\"token punctuation\\">}</span><span class=\\"token punctuation\\">,</span>
  <span class=\\"token punctuation\\">}</span><span class=\\"token punctuation\\">;</span>
<span class=\\"token punctuation\\">}</span></code></pre>
<p>Just make sure you put all your static files in the appropriate directory and you’ll be good.</p>
<p>So finally, if you’ve kept 11ty running and the browser running it should look like this:</p>
<figure slot=\\"image\\"><picture>   <source type=\\"image/webp\\" srcset=\\"https://flamedfury.com/assets/images/11ty-neocities-2026-05-styled-480w.webp 480w, https://flamedfury.com/assets/images/11ty-neocities-2026-05-styled-800w.webp 800w, https://flamedfury.com/assets/images/11ty-neocities-2026-05-styled-1200w.webp 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" />
  <source type=\\"image/jpeg\\" srcset=\\"https://flamedfury.com/assets/images/11ty-neocities-2026-05-styled-480w.jpeg 480w, https://flamedfury.com/assets/images/11ty-neocities-2026-05-styled-800w.jpeg 800w, https://flamedfury.com/assets/images/11ty-neocities-2026-05-styled-1200w.jpeg 1200w\\" sizes=\\"(max-width: 480px) 100vw, (max-width: 800px) 80vw, 1200px\\" /><img src=\\"https://flamedfury.com/assets/images/11ty-neocities-2026-05-styled-1200w.jpeg\\" width=\\"1200\\" height=\\"984\\" alt=\\"The finished homepage, centred with a clean system font, spaced-out navigation and a footer divider\\" loading=\\"lazy\\" decoding=\\"async\\" eleventy:ignore=\\"\\" /></picture><figcaption>A Nicely Styled Homepage</figcaption></figure>
<p>Yours will look a little different depending on the colours and fonts you chose above. Now we have a homepage we’re happy with, let’s get it online.</p>
<h2 id=\\"deploy-to-neocities\\"><a class=\\"heading-anchor\\" href=\\"https://flamedfury.com/guides/11ty-homepage-neocities-2026/#deploy-to-neocities\\">Deploy to Neocities</a></h2>
<p>There are two ways to get your site onto Neocities. We’ll start with the simplest, pushing it from your terminal by hand, then automate it so a deploy happens every time you commit.</p>
<aside class=\\"aside flow note\\">
    <div class=\\"aside__content\\">
Not on Neocities? The guide still applies. The same build and the same Forgejo Actions automation work for any host, you just swap out the deploy step. If you're on shared hosting or a VPS, I've written that up separately in <a href=\\"https://flamedfury.com/posts/deploying-an-11ty-project-to-shared-hosting/\\">Deploying An 11ty Project To Shared Hosting</a>.
</div>
  </aside>
<h3 id=\\"build-the-site\\"><a class=\\"heading-anchor\\" href=\\"https://flamedfury.com/guides/11ty-homepage-neocities-2026/#build-the-site\\">Build the site</a></h3>
<p>Whichever method you choose, first build a fresh copy of your site:</p>
<pre class=\\"language-bash\\"><code class=\\"language-bash\\"><span class=\\"token function\\">npm</span> run build</code></pre>
<p>This writes the finished HTML, CSS and assets to the <code>public</code> directory. That’s the folder we deploy.</p>
<h3 id=\\"the-simple-way-the-neocities-cli\\"><a class=\\"heading-anchor\\" href=\\"https://flamedfury.com/guides/11ty-homepage-neocities-2026/#the-simple-way-the-neocities-cli\\">The simple way: the Neocities CLI</a></h3>
<p>Neocities provides a command-line tool that lets you push your site straight from your terminal. It’s a Ruby gem, so you’ll need <a href=\\"https://www.ruby-lang.org/\\" rel=\\"noopener\\">Ruby</a> installed.</p>
<pre class=\\"language-bash\\"><code class=\\"language-bash\\">gem <span class=\\"token function\\">install</span> neocities</code></pre>
<p>The first time you run a command it’ll ask for your Neocities username and password, then store an API key locally so you don’t have to log in again.</p>
<p>Push the contents of your <code>public</code> directory:</p>
<pre class=\\"language-bash\\"><code class=\\"language-bash\\">neocities push public</code></pre>
<aside class=\\"aside flow warning\\">
    <div class=\\"aside__content\\">
Add the <code>--prune</code> flag (<code>neocities push --prune public</code>) to also remove files on Neocities that no longer exist in your local <code>public</code> folder. Handy for keeping things tidy, but double-check you're pushing the right directory first. It deletes remote files.
</div>
  </aside>
<p>That’s it, your homepage is live. For a lot of people this is all you need. Build, push, done.</p>
<h3 id=\\"the-automated-way-forgejo-actions\\"><a class=\\"heading-anchor\\" href=\\"https://flamedfury.com/guides/11ty-homepage-neocities-2026/#the-automated-way-forgejo-actions\\">The automated way: Forgejo Actions</a></h3>
<p>Pushing by hand is fine, but it’s even nicer to have your site rebuild and deploy itself every time you commit a change. We can do that with <a href=\\"https://forgejo.org/docs/latest/user/actions/\\" rel=\\"noopener\\">Forgejo Actions</a>, the built-in CI for Forgejo. If you self-host Forgejo this runs on your own runner; if you don’t self-host, <a href=\\"https://codeberg.org/\\" rel=\\"noopener\\">Codeberg</a> offers the same thing (more on that below).</p>
<aside class=\\"aside flow note\\">
    <div class=\\"aside__content\\">
Don't want to self-host Forgejo but still want to use it? There are managed instances out there. If you're a member of the <a href=\\"https://32bit.cafe/\\">32-Bit Cafe</a>, we run a Forgejo instance at <a href=\\"https://git.32bit.cafe/\\">git.32bit.cafe</a> that you can sign into with your 32-Bit Cafe SSO. If you're an <a href=\\"https://omg.lol/\\">omg.lol</a> member, you can use <a href=\\"https://source.tube/\\">source.tube</a>.
</div>
  </aside>
<p>First, push your project to a repository on your Forgejo instance. Then grab your Neocities API key from your <a href=\\"https://neocities.org/settings\\" rel=\\"noopener\\">account settings</a> (Manage Site Settings → API Key) and add it to your repository as a secret named <code>NEOCITIES_API_KEY</code> (Repository → Settings → Actions → Secrets).</p>
<p>Now create a workflow file at <code>.forgejo/workflows/deploy.yml</code>:</p>
<pre class=\\"language-yaml\\"><code class=\\"language-yaml\\"><span class=\\"token key atrule\\">name</span><span class=\\"token punctuation\\">:</span> Deploy to Neocities

<span class=\\"token key atrule\\">on</span><span class=\\"token punctuation\\">:</span>
  <span class=\\"token key atrule\\">push</span><span class=\\"token punctuation\\">:</span>
    <span class=\\"token key atrule\\">branches</span><span class=\\"token punctuation\\">:</span>
      <span class=\\"token punctuation\\">-</span> main

<span class=\\"token comment\\"># only run one deploy at a time</span>
<span class=\\"token key atrule\\">concurrency</span><span class=\\"token punctuation\\">:</span>
  <span class=\\"token key atrule\\">group</span><span class=\\"token punctuation\\">:</span> deploy<span class=\\"token punctuation\\">-</span>neocities
  <span class=\\"token key atrule\\">cancel-in-progress</span><span class=\\"token punctuation\\">:</span> <span class=\\"token boolean important\\">true</span>

<span class=\\"token key atrule\\">jobs</span><span class=\\"token punctuation\\">:</span>
  <span class=\\"token key atrule\\">deploy</span><span class=\\"token punctuation\\">:</span>
    <span class=\\"token key atrule\\">runs-on</span><span class=\\"token punctuation\\">:</span> docker
    <span class=\\"token key atrule\\">steps</span><span class=\\"token punctuation\\">:</span>
      <span class=\\"token punctuation\\">-</span> <span class=\\"token key atrule\\">name</span><span class=\\"token punctuation\\">:</span> Checkout
        <span class=\\"token key atrule\\">uses</span><span class=\\"token punctuation\\">:</span> https<span class=\\"token punctuation\\">:</span>//code.forgejo.org/actions/checkout@v4

      <span class=\\"token punctuation\\">-</span> <span class=\\"token key atrule\\">name</span><span class=\\"token punctuation\\">:</span> Set up Node
        <span class=\\"token key atrule\\">uses</span><span class=\\"token punctuation\\">:</span> https<span class=\\"token punctuation\\">:</span>//code.forgejo.org/actions/setup<span class=\\"token punctuation\\">-</span>node@v4
        <span class=\\"token key atrule\\">with</span><span class=\\"token punctuation\\">:</span>
          <span class=\\"token key atrule\\">node-version</span><span class=\\"token punctuation\\">:</span> <span class=\\"token number\\">22</span>

      <span class=\\"token punctuation\\">-</span> <span class=\\"token key atrule\\">name</span><span class=\\"token punctuation\\">:</span> Install and build
        <span class=\\"token key atrule\\">run</span><span class=\\"token punctuation\\">:</span> <span class=\\"token punctuation\\">|</span><span class=\\"token scalar string\\">
          npm ci
          npm run build</span>

      <span class=\\"token punctuation\\">-</span> <span class=\\"token key atrule\\">name</span><span class=\\"token punctuation\\">:</span> Deploy to Neocities
        <span class=\\"token key atrule\\">uses</span><span class=\\"token punctuation\\">:</span> https<span class=\\"token punctuation\\">:</span>//github.com/bcomnes/deploy<span class=\\"token punctuation\\">-</span>to<span class=\\"token punctuation\\">-</span>neocities@v3
        <span class=\\"token key atrule\\">with</span><span class=\\"token punctuation\\">:</span>
          <span class=\\"token key atrule\\">api_token</span><span class=\\"token punctuation\\">:</span> $<span class=\\"token punctuation\\">{</span><span class=\\"token punctuation\\">{</span> secrets.NEOCITIES_API_KEY <span class=\\"token punctuation\\">}</span><span class=\\"token punctuation\\">}</span>
          <span class=\\"token key atrule\\">dist_dir</span><span class=\\"token punctuation\\">:</span> public
          <span class=\\"token key atrule\\">cleanup</span><span class=\\"token punctuation\\">:</span> <span class=\\"token boolean important\\">true</span></code></pre>
<aside class=\\"aside flow note\\">
    <div class=\\"aside__content\\">
<p>A few things to note in this workflow:</p>
<ul>
  <li><code>runs-on: docker</code> picks the runner label. This is the default on Forgejo and Codeberg.</li>
  <li>Actions are referenced by their full URL. The checkout and setup-node actions come from <code>code.forgejo.org</code>, so we stay off GitHub for those.</li>
  <li>The deploy step uses <code>bcomnes/deploy-to-neocities</code>, which is hosted on GitHub. We're only <em>using</em> it. Your code still lives on Forgejo or Codeberg. The <code>cleanup: true</code> option removes remote files that aren't in your new build, the same as <code>--prune</code> on the CLI.</li>
</ul>
</div>
  </aside>
<p>Commit and push the workflow file. From now on, every push to <code>main</code> rebuilds your site and deploys it to Neocities automatically.</p>
<h3 id=\\"not-self-hosting-use-codeberg\\"><a class=\\"heading-anchor\\" href=\\"https://flamedfury.com/guides/11ty-homepage-neocities-2026/#not-self-hosting-use-codeberg\\">Not self-hosting? Use Codeberg</a></h3>
<p>If you don’t run your own Forgejo instance, <a href=\\"https://codeberg.org/\\" rel=\\"noopener\\">Codeberg</a> is a free, community-run home for your code and runs the very same Forgejo Actions. The workflow file above works as-is. Push your project to a Codeberg repo, add the <code>NEOCITIES_API_KEY</code> secret in the repository settings, and you’re away. You may need to enable Actions for your repository first; see the <a href=\\"https://docs.codeberg.org/ci/actions/\\" rel=\\"noopener\\">Codeberg CI documentation</a> for details.</p>
<h2 id=\\"bringing-your-existing-site-across\\"><a class=\\"heading-anchor\\" href=\\"https://flamedfury.com/guides/11ty-homepage-neocities-2026/#bringing-your-existing-site-across\\">Bringing your existing site across</a></h2>
<p>Already have a homepage you’ve been hand-coding on Neocities? You don’t have to start from scratch. Eleventy is happy to take what you’ve got and slot it into this structure.</p>
<p>Copy each existing page into <code>src/</code> (your old <code>index.html</code> becomes <code>src/index.html</code>, and so on). Then move the parts every page repeats, the <code>&lt;head&gt;</code>, header, nav and footer, into <code>base.njk</code> and the partials you built earlier. Delete that boilerplate from each page and add a little front matter at the top:</p>
<pre class=\\"language-html\\"><code class=\\"language-html\\">---
title: About Me
layout: base.njk
---</code></pre>
<p>Whatever’s left in the file is just that page’s own content, and the layout wraps it.</p>
<p>Your CSS goes in <code>src/css/</code>, images in <code>src/img/</code>, and fonts in <code>src/fonts/</code>. The passthrough copy we set up earlier ships them straight to <code>public/</code>.</p>
<p>If a page is mostly writing, paste the body into a <code>.md</code> file instead of <code>.html</code>. Any fiddly HTML, like an embed or some custom markup, can stay exactly as it is and 11ty will render the Markdown around it.</p>
<p>Run <code>npm run build</code>, check <code>public/</code> looks the way you expect, then push it live with the Neocities CLI or your Forgejo Actions workflow. Same site you already had, now with layouts, partials and a build step doing the repetitive work for you.</p>
<hr />
<p>Reference: I created the original version of this guide based heavily on these existing guides, and they’re still well worth a read:</p>
<ul class=\\"list\\">
<li><a href=\\"https://11ty.rocks/posts/create-your-first-basic-11ty-website/\\" rel=\\"noopener\\">Create Your First Basic 11ty Website</a></li>
<li><a href=\\"https://sia.codes/posts/itsiest-bitsiest-eleventy-tutorial/\\" rel=\\"noopener\\">Itsiest, Bitsiest Eleventy Tutorial</a></li>
</ul>
<p>Without these, I wouldn’t even know how to write down what I needed to.</p>
<p>Hey, thanks for reading this post in your feed reader! Want to chat? <a href=\\\"mailto:hello@flamedfury.com?subject=RE: Create A Static Site Using 11ty &amp; Deploy to Neocities (2026 Refresh)\\\">Reply by email</a> or add me on <a href=\\\"xmpp:flamed@omg.lol\\\">XMPP</a>, or send a <a href=\\\"https://flamedfury.com/guides/11ty-homepage-neocities-2026/#webmention\\\">webmention</a>. Check out the <a href=\\\"https://flamedfury.com/posts/\\\">posts archive</a> on the website.</p>",
        "date_published": "2026-06-16T12:00:00Z",
        "summary": "A refresh of my most-read guide. Build a homepage with 11ty, ship it to Neocities, and keep GitHub out of it with Forgejo or Codeberg."
      },{
        "id": "https://flamedfury.com/posts/kelly-tarltons/",
        "title": "Kelly Tarlton&#39;s",
        "url": "https://flamedfury.com/posts/kelly-tarltons/",
        "content_html": "<p>What’s going on, Internet? This weekend was rainy and wet in Auckland so we packed up the kids in the car and headed to <a href=\\"https://www.visitsealife.com/auckland/\\" rel=\\"noopener\\">Kelly Tarlton’s</a>, Auckland’s local aquarium. I hadn’t been myself since I was a kid, so I was excited to go with the kids. They’ve both been multiple times in their short little lives, and luckily they love revisiting places as often as they can.</p>
<p>Buying tickets online is the way to go. Once we arrived we went straight through after scanning our tickets. The first thing you walk through is old recreations of Scott Hutt and Scott Base from Antarctica, which I would have loved to stick around and read all the info cards for, but the kids “don’t like this part”. Fair enough. The penguins weren’t too far away.</p>
<p>But before you get to see the penguins you have to walk through this ice cave with a violently moving bridge, simulating something to do in Antarctica I guess. My daughter DOES NOT like this part, lol.</p>
<p>Braving the bridge, we got to see the penguins, which the kids love. Kelly Tarlton’s have King Penguins and Gentoo Penguins, and there are so many of them. Auckland Zoo only has half a dozen Little Blue Penguins, so this was fun, looking through the glass at them waddling around on the ice or swimming in their pool.</p>
<p>Past the penguins was an interactive room set up with tablet stations and a huge projector wall. On the tablets you get to colour in sea creatures. Your choices are turtle, fish, and manta ray. Once you’re done you tap “bring to life”, and about ten seconds later your creation appears on the projector screen and swims around with all the other colourful creatures. The kids absolutely loved this, and we spent a good forty minutes here.</p>
<p>Through a tunnel and we’re at the café and indoor playground. I was happy to sit down with a hot chocolate and watch the kids enjoy their snacks before spending thirty minutes on the playground.</p>
<p>Once they’d had enough, it was time to go through the aquarium. You stand on a travellator (you know, a flat escalator) and all the fish, rays, and sharks swim around and above you. We did this twice before carrying on to the rest of the exhibits in the little tanks. Crayfish, kina, eel, seahorses, tropical fish, starfish. We had fun checking them all out before heading to the dreaded gift shop before the exit. Meltdowns ensued, and after a bit of calming down we were able to escape.</p>
<p>The rain had stopped, and we had a nice drive home and pizza for dinner. Yum.</p>
<p>Hey, thanks for reading this post in your feed reader! Want to chat? <a href=\\\"mailto:hello@flamedfury.com?subject=RE: Kelly Tarlton&#39;s\\\">Reply by email</a> or add me on <a href=\\\"xmpp:flamed@omg.lol\\\">XMPP</a>, or send a <a href=\\\"https://flamedfury.com/posts/kelly-tarltons/#webmention\\\">webmention</a>. Check out the <a href=\\\"https://flamedfury.com/posts/\\\">posts archive</a> on the website.</p>",
        "date_published": "2026-06-06T09:38:17Z",
        "summary": "A rainy afternoon at the aquarium with the kids"
      }
  ]
}