{
  "path": "/3m6sek2j7p22b",
  "site": "at://did:plc:xg2vq45muivyy3xwatcehspu/site.standard.publication/3m3zpxhfl3c2s",
  "$type": "site.standard.document",
  "title": "Dev Log 27: 2025-11-29",
  "content": {
    "$type": "pub.leaflet.content",
    "pages": [
      {
        "id": "019acb12-b42f-7cc9-bd1b-b3a03f21cac4",
        "$type": "pub.leaflet.pages.linearDocument",
        "blocks": [
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.header",
              "level": 2,
              "facets": [
                {
                  "index": {
                    "byteEnd": 20,
                    "byteStart": 16
                  },
                  "features": [
                    {
                      "uri": "https://desertthunder.github.io/garden",
                      "$type": "pub.leaflet.richtext.facet#link"
                    }
                  ]
                }
              ],
              "plaintext": "Digital Garden (site)"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [],
              "plaintext": "More Astro work yesterday. I'm working on a custom changelog/diff plugin that creates a page in a Starlight project that does the following things:"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.unorderedList",
              "children": [
                {
                  "$type": "pub.leaflet.blocks.unorderedList#listItem",
                  "content": {
                    "$type": "pub.leaflet.blocks.text",
                    "facets": [],
                    "plaintext": "Git history tracking for content (additions/updates/removals)"
                  },
                  "children": [
                    {
                      "$type": "pub.leaflet.blocks.unorderedList#listItem",
                      "content": {
                        "$type": "pub.leaflet.blocks.text",
                        "facets": [],
                        "plaintext": "Links to the changed & added pages"
                      },
                      "children": []
                    },
                    {
                      "$type": "pub.leaflet.blocks.unorderedList#listItem",
                      "content": {
                        "$type": "pub.leaflet.blocks.text",
                        "facets": [],
                        "plaintext": "Renders partial diffs showing what changed in updated pages"
                      },
                      "children": []
                    }
                  ]
                },
                {
                  "$type": "pub.leaflet.blocks.unorderedList#listItem",
                  "content": {
                    "$type": "pub.leaflet.blocks.text",
                    "facets": [],
                    "plaintext": "All in a date-organized view similar to a changelog"
                  },
                  "children": []
                }
              ]
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [
                {
                  "index": {
                    "byteEnd": 42,
                    "byteStart": 38
                  },
                  "features": [
                    {
                      "uri": "https://desertthunder.github.io/garden/changelog/",
                      "$type": "pub.leaflet.richtext.facet#link"
                    }
                  ]
                }
              ],
              "plaintext": "You can view the final implementation here"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.image",
              "image": {
                "$type": "blob",
                "ref": {
                  "$link": "bafkreicinq2ruucwaufefrrqsbtcnft6b6zpdetfhpo5ayxvzbwjle7s2q"
                },
                "mimeType": "image/png",
                "size": 122607
              },
              "aspectRatio": {
                "width": 1472,
                "height": 736
              }
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.header",
              "level": 2,
              "facets": [
                {
                  "index": {
                    "byteEnd": 16,
                    "byteStart": 12
                  },
                  "features": [
                    {
                      "uri": "https://github.com/stormlightlabs/knowledgelab",
                      "$type": "pub.leaflet.richtext.facet#link"
                    }
                  ]
                }
              ],
              "plaintext": "Note Taker (code)"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [],
              "plaintext": "On a personal level, my goal with today is to see how well I can stick to a single project for most of the day. "
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [],
              "plaintext": "I'd like to get the dialect of markdown and the editor's ui & ux completed. This means parsing editor specific frontmatter and task collection, as well as code block syntax highlighting. I tend to have trouble with writing bindings for async JS code in Fable so we'll see how integrating shiki goes."
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [],
              "plaintext": "There are also a couple of mismatches between the decoded JSON with Thoth and what Wails sends to the front-end. I've only been programming in FSharp for about a year and while I love it, decoding and encoding is the hardest aspect of it for me. Then comes handling indentation."
            }
          }
        ]
      }
    ]
  },
  "bskyPostRef": {
    "cid": "bafyreichaxdfznz3aasuwias7g6pfutgfojkosidx4uiv4i5riusbhqb2u",
    "uri": "at://did:plc:xg2vq45muivyy3xwatcehspu/app.bsky.feed.post/3m6sek6gfkk2b",
    "commit": {
      "cid": "bafyreid34hqofpd2fjwpoh24gdt24tnqpd3xajp34mucck2345gd5ncz3q",
      "rev": "3m6sek6ivup26"
    },
    "validationStatus": "valid"
  },
  "description": "🚀",
  "publishedAt": "2025-11-29T21:42:39.460Z"
}