{
  "path": "/3mhizlban7k2w",
  "site": "at://did:plc:btxrwcaeyodrap5mnjw2fvmz/site.standard.publication/3lppk75kw7k26",
  "tags": [],
  "$type": "site.standard.document",
  "title": "Fonts and footnotes!",
  "content": {
    "$type": "pub.leaflet.content",
    "pages": [
      {
        "id": "019cc520-3e23-7aa0-b26d-8a161b9522c1",
        "$type": "pub.leaflet.pages.linearDocument",
        "blocks": [
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [
                {
                  "index": {
                    "byteEnd": 106,
                    "byteStart": 97
                  },
                  "features": [
                    {
                      "$type": "pub.leaflet.richtext.facet#italic"
                    }
                  ]
                }
              ],
              "plaintext": "We hinted that we were dropping two F-bombs — a pair of long-awaited features — fonts (okay, typefaces) and footnotes!"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.header",
              "level": 2,
              "plaintext": "Fonts"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "plaintext": "Leaflet now has six curated typefaces — our original favorite, iA Writer Quattro, plus:"
            }
          },
          {
            "$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",
                    "plaintext": "Atkinson Hyperlegible Next"
                  }
                },
                {
                  "$type": "pub.leaflet.blocks.unorderedList#listItem",
                  "content": {
                    "$type": "pub.leaflet.blocks.text",
                    "plaintext": "Lora"
                  }
                },
                {
                  "$type": "pub.leaflet.blocks.unorderedList#listItem",
                  "content": {
                    "$type": "pub.leaflet.blocks.text",
                    "plaintext": "Monterrat"
                  }
                },
                {
                  "$type": "pub.leaflet.blocks.unorderedList#listItem",
                  "content": {
                    "$type": "pub.leaflet.blocks.text",
                    "plaintext": "Sometype Mono"
                  }
                },
                {
                  "$type": "pub.leaflet.blocks.unorderedList#listItem",
                  "content": {
                    "$type": "pub.leaflet.blocks.text",
                    "plaintext": "Source Sans 3"
                  }
                }
              ]
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "plaintext": "We have settings for both body and header font, so you can mix and match for just the right amount of contrast."
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [
                {
                  "index": {
                    "byteEnd": 12,
                    "byteStart": 8
                  },
                  "features": [
                    {
                      "$type": "pub.leaflet.richtext.facet#italic"
                    }
                  ]
                }
              ],
              "plaintext": "You can also add any custom font available on Google Fonts! Paste in the font name and we'll load it right in."
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "id": "019d0291-9df9-7bbc-a71e-219562957c0e",
              "$type": "pub.leaflet.blocks.page"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "id": "019d0c36-c5d1-7bbc-a736-08d695a3506d",
              "$type": "pub.leaflet.blocks.page"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "plaintext": "The arbitrary Google Font option is particularly fun for adding funky header fonts. And useful if you need a font that better supports non-English scripts."
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "plaintext": "Paired with our existing theme options, you've not got more ways to be expressive in Leaflet and give your posts and pubs their own special flavor."
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "plaintext": "We tweaked font sizes a bit too, mainly bumping the header scale overall and adjusting base size for some of the fonts to more or less match better. Future idea: more settings for size and spacing…"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.header",
              "level": 2,
              "plaintext": "Footnotes"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "plaintext": "One of our top editor requests. Add footnotes from the editor toolbar, and they show…in three places, actually!"
            }
          },
          {
            "$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",
                    "plaintext": "* Footnotes: classic, bottom of post"
                  }
                },
                {
                  "$type": "pub.leaflet.blocks.unorderedList#listItem",
                  "content": {
                    "$type": "pub.leaflet.blocks.text",
                    "plaintext": "† Sidenotes: easy reference, with wider windows"
                  }
                },
                {
                  "$type": "pub.leaflet.blocks.unorderedList#listItem",
                  "content": {
                    "$type": "pub.leaflet.blocks.text",
                    "plaintext": "‡ Popover: tap to preview, great on mobile"
                  }
                }
              ]
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "plaintext": "Here's what they look like:"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.image",
              "image": {
                "$type": "blob",
                "ref": {
                  "$link": "bafkreidypoufdythraom3ro3qoubbi67pdfexilnkv2k7lkdczpjsl3zdy"
                },
                "mimeType": "image/webp",
                "size": 162172
              },
              "aspectRatio": {
                "width": 2000,
                "height": 1124
              }
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "plaintext": "And some examples of footnotes in action:"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "id": "019d0299-4874-7bbc-a72e-e286fd414673",
              "$type": "pub.leaflet.blocks.page"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "plaintext": "We can't wait to see how you use both these new features!"
            }
          }
        ]
      },
      {
        "id": "019d0c36-c5d1-7bbc-a736-08d695a3506d",
        "$type": "pub.leaflet.pages.linearDocument",
        "blocks": [
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.header",
              "level": 1,
              "plaintext": "Fun Google Fonts for headers!"
            }
          },
          {
            "$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": [
                      {
                        "index": {
                          "byteEnd": 11,
                          "byteStart": 0
                        },
                        "features": [
                          {
                            "uri": "https://fonts.google.com/specimen/moo+lah+lah",
                            "$type": "pub.leaflet.richtext.facet#link"
                          }
                        ]
                      }
                    ],
                    "plaintext": "Moo Lah Lah"
                  }
                },
                {
                  "$type": "pub.leaflet.blocks.unorderedList#listItem",
                  "content": {
                    "$type": "pub.leaflet.blocks.text",
                    "facets": [
                      {
                        "index": {
                          "byteEnd": 13,
                          "byteStart": 0
                        },
                        "features": [
                          {
                            "uri": "https://fonts.google.com/specimen/Rubik+Microbe",
                            "$type": "pub.leaflet.richtext.facet#link"
                          }
                        ]
                      }
                    ],
                    "plaintext": "Rubik Microbe"
                  }
                },
                {
                  "$type": "pub.leaflet.blocks.unorderedList#listItem",
                  "content": {
                    "$type": "pub.leaflet.blocks.text",
                    "facets": [
                      {
                        "index": {
                          "byteEnd": 10,
                          "byteStart": 0
                        },
                        "features": [
                          {
                            "uri": "https://fonts.google.com/specimen/schoolbell",
                            "$type": "pub.leaflet.richtext.facet#link"
                          }
                        ]
                      }
                    ],
                    "plaintext": "Schoolbell"
                  }
                },
                {
                  "$type": "pub.leaflet.blocks.unorderedList#listItem",
                  "content": {
                    "$type": "pub.leaflet.blocks.text",
                    "facets": [
                      {
                        "index": {
                          "byteEnd": 8,
                          "byteStart": 0
                        },
                        "features": [
                          {
                            "uri": "https://fonts.google.com/specimen/Kablammo",
                            "$type": "pub.leaflet.richtext.facet#link"
                          }
                        ]
                      }
                    ],
                    "plaintext": "Kablammo"
                  }
                },
                {
                  "$type": "pub.leaflet.blocks.unorderedList#listItem",
                  "content": {
                    "$type": "pub.leaflet.blocks.text",
                    "facets": [
                      {
                        "index": {
                          "byteEnd": 10,
                          "byteStart": 0
                        },
                        "features": [
                          {
                            "uri": "https://fonts.google.com/specimen/silkscreen",
                            "$type": "pub.leaflet.richtext.facet#link"
                          }
                        ]
                      }
                    ],
                    "plaintext": "Silkscreen"
                  }
                },
                {
                  "$type": "pub.leaflet.blocks.unorderedList#listItem",
                  "content": {
                    "$type": "pub.leaflet.blocks.text",
                    "facets": [
                      {
                        "index": {
                          "byteEnd": 7,
                          "byteStart": 0
                        },
                        "features": [
                          {
                            "uri": "https://fonts.google.com/specimen/flavors",
                            "$type": "pub.leaflet.richtext.facet#link"
                          }
                        ]
                      }
                    ],
                    "plaintext": "Flavors"
                  }
                },
                {
                  "$type": "pub.leaflet.blocks.unorderedList#listItem",
                  "content": {
                    "$type": "pub.leaflet.blocks.text",
                    "facets": [
                      {
                        "index": {
                          "byteEnd": 10,
                          "byteStart": 0
                        },
                        "features": [
                          {
                            "uri": "https://fonts.google.com/specimen/barriecito",
                            "$type": "pub.leaflet.richtext.facet#link"
                          }
                        ]
                      }
                    ],
                    "plaintext": "Barriecito"
                  }
                },
                {
                  "$type": "pub.leaflet.blocks.unorderedList#listItem",
                  "content": {
                    "$type": "pub.leaflet.blocks.text",
                    "facets": [
                      {
                        "index": {
                          "byteEnd": 12,
                          "byteStart": 0
                        },
                        "features": [
                          {
                            "uri": "https://fonts.google.com/specimen/coral+pixels",
                            "$type": "pub.leaflet.richtext.facet#link"
                          }
                        ]
                      }
                    ],
                    "plaintext": "Coral Pixels"
                  }
                },
                {
                  "$type": "pub.leaflet.blocks.unorderedList#listItem",
                  "content": {
                    "$type": "pub.leaflet.blocks.text",
                    "facets": [
                      {
                        "index": {
                          "byteEnd": 14,
                          "byteStart": 0
                        },
                        "features": [
                          {
                            "uri": "https://fonts.google.com/specimen/jim+nightshade",
                            "$type": "pub.leaflet.richtext.facet#link"
                          }
                        ]
                      }
                    ],
                    "plaintext": "Jim Nightshade"
                  }
                },
                {
                  "$type": "pub.leaflet.blocks.unorderedList#listItem",
                  "content": {
                    "$type": "pub.leaflet.blocks.text",
                    "facets": [
                      {
                        "index": {
                          "byteEnd": 10,
                          "byteStart": 0
                        },
                        "features": [
                          {
                            "uri": "https://fonts.google.com/specimen/Comic+Neue",
                            "$type": "pub.leaflet.richtext.facet#link"
                          }
                        ]
                      }
                    ],
                    "plaintext": "Comic Neue"
                  }
                }
              ]
            }
          }
        ]
      },
      {
        "id": "019d0291-9df9-7bbc-a71e-219562957c0e",
        "$type": "pub.leaflet.pages.linearDocument",
        "blocks": [
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.header",
              "level": 1,
              "plaintext": "Examples"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [
                {
                  "index": {
                    "byteEnd": 32,
                    "byteStart": 0
                  },
                  "features": [
                    {
                      "$type": "pub.leaflet.richtext.facet#italic"
                    }
                  ]
                }
              ],
              "plaintext": "Leaflet posts with custom fonts!"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "src": "https://desertthunder.leaflet.pub/3mgi3w3lmxs2z",
              "$type": "pub.leaflet.blocks.website",
              "title": "Software as Fan-Art - oh hey, it's owais",
              "description": "Dev Log 46: 2026-03-07",
              "previewImage": {
                "$type": "blob",
                "ref": {
                  "$link": "bafkreidaanh6a44dtw7q33rhsxjcrtafgbbfqlxud4cd2hlj4p3d64vbeq"
                },
                "mimeType": "image/png",
                "size": 28698
              }
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.image",
              "image": {
                "$type": "blob",
                "ref": {
                  "$link": "bafkreib6buhruksb7snqhvr5ij7egdnwjuxqqhnhd6xn6sugs5srychmb4"
                },
                "mimeType": "image/webp",
                "size": 204774
              },
              "aspectRatio": {
                "width": 1678,
                "height": 1678
              }
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "plaintext": ""
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "src": "https://www.aaronrosspowell.com/3mhikjko2ws2a",
              "$type": "pub.leaflet.blocks.website",
              "title": "The Inner Life of Liberalism - Aaron Ross Powell’s Blog",
              "description": "The practices that make your life better are the same ones that sustain a free society. It's time liberalism took that seriously.",
              "previewImage": {
                "$type": "blob",
                "ref": {
                  "$link": "bafkreid26ehgfgopbddmihzwhpfmc5fjejulamqkmzc2n2rlzijxu4uhdm"
                },
                "mimeType": "image/png",
                "size": 39041
              }
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.image",
              "image": {
                "$type": "blob",
                "ref": {
                  "$link": "bafkreihk3dhz7ipi76f63mryqmd2kjnl3zaxjxwjauotzlyd4nii45r3au"
                },
                "mimeType": "image/webp",
                "size": 381734
              },
              "aspectRatio": {
                "width": 1680,
                "height": 1680
              }
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "plaintext": ""
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "src": "https://max.leaflet.pub/3m7gdocum3c2z",
              "$type": "pub.leaflet.blocks.website",
              "title": "My Opinion on the iPhone Air - maxine naomi lunaris ✦",
              "description": "",
              "previewImage": {
                "$type": "blob",
                "ref": {
                  "$link": "bafkreihyt6vzi7sfjxvg7bjgmh4epeltghzetgyxwfiqu5edwl42aagb4a"
                },
                "mimeType": "image/png",
                "size": 37051
              }
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.image",
              "image": {
                "$type": "blob",
                "ref": {
                  "$link": "bafkreicbqboxc7j6q3tql4hzd7pz4mjwubkqvpcabs6u527rniajlmhrsy"
                },
                "mimeType": "image/webp",
                "size": 226928
              },
              "aspectRatio": {
                "width": 1680,
                "height": 1680
              }
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "plaintext": ""
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "src": "https://dailyplanet.leaflet.pub/3mhgmgkv5us2i",
              "$type": "pub.leaflet.blocks.website",
              "title": "The Daily Planet #128: War and the non-human world - The Daily Planet",
              "description": "",
              "previewImage": {
                "$type": "blob",
                "ref": {
                  "$link": "bafkreidhxsulcecl2wtsdiktggou6jys7kl6tcx6z3wb7ysk5fnhugfezq"
                },
                "mimeType": "image/png",
                "size": 33457
              }
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.image",
              "image": {
                "$type": "blob",
                "ref": {
                  "$link": "bafkreihru6lwwrgczh5mx7ktzws3o53sh7a3z4llbbsw3dqzpmzdwbrbli"
                },
                "mimeType": "image/webp",
                "size": 355720
              },
              "aspectRatio": {
                "width": 1680,
                "height": 1680
              }
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "plaintext": ""
            }
          }
        ]
      },
      {
        "id": "019d0299-4874-7bbc-a72e-e286fd414673",
        "$type": "pub.leaflet.pages.linearDocument",
        "blocks": [
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.header",
              "level": 1,
              "plaintext": "Examples"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [
                {
                  "index": {
                    "byteEnd": 29,
                    "byteStart": 0
                  },
                  "features": [
                    {
                      "$type": "pub.leaflet.richtext.facet#italic"
                    }
                  ]
                }
              ],
              "plaintext": "Leaflet posts with footnotes!"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "src": "https://aiueo-en.leaflet.pub/3mggw6ypzqk2m",
              "$type": "pub.leaflet.blocks.website",
              "title": "Disaster preparedness in Japan: Apps, websites, etc. - aiueo",
              "description": "For English speakers living or traveling in Japan (and other languages, to a more limited extent)",
              "previewImage": {
                "$type": "blob",
                "ref": {
                  "$link": "bafkreibi2jxunxhmxy3bpizreebazf6idgx4yqgr3ca4opyifiari7ypqi"
                },
                "mimeType": "image/png",
                "size": 32591
              }
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "src": "https://peripheral.leaflet.pub/3mgjezis5fk2y",
              "$type": "pub.leaflet.blocks.website",
              "title": "A better Signal wishlist - re:center",
              "description": "Dreams of a better end-to-end-encrypted messaging app.",
              "previewImage": {
                "$type": "blob",
                "ref": {
                  "$link": "bafkreigwqag4dbxx327k3qg62vhtlvvr3623pf4o3t3jhfr3xjugjimogu"
                },
                "mimeType": "image/png",
                "size": 38070
              }
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "src": "https://thelittleoutsider.leaflet.pub/3mgl4sfhcdk2b",
              "$type": "pub.leaflet.blocks.website",
              "title": "\"the day of spring, warmth, flowers and gentleness\" - the diary of a half-asleep owl",
              "description": "how International Women's Day is viewed in my country, and how the government continues to promote this point of view",
              "previewImage": {
                "$type": "blob",
                "ref": {
                  "$link": "bafkreiaf2uonkkjyxhycku7huvubwvqow5jcgkdyssgqncokxv3gclqaeq"
                },
                "mimeType": "image/png",
                "size": 98906
              }
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "src": "https://rensletter.leaflet.pub/3mgqhjsgfjk2h",
              "$type": "pub.leaflet.blocks.website",
              "title": "if i may be a little obsessive… - ren’s letter",
              "description": "omfg. this music.",
              "previewImage": {
                "$type": "blob",
                "ref": {
                  "$link": "bafkreihwiw6uaxhsc2vl2hmtili37hxowprrjvnxtzjdzo6njacgc2fjoi"
                },
                "mimeType": "image/png",
                "size": 37309
              }
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "src": "https://7hird.dev/3mgzlboei5k2i",
              "$type": "pub.leaflet.blocks.website",
              "title": "Bots Among Us - 7hird Thoughts",
              "description": "How can we build trust in an era of bots and lies?",
              "previewImage": {
                "$type": "blob",
                "ref": {
                  "$link": "bafkreidtwjj5r3ka2i335w6wrweckkojsci6fwpcmjbljf6cfz52ex4cn4"
                },
                "mimeType": "image/png",
                "size": 62356
              }
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "src": "https://melly.leaflet.pub/3mh35ggyjyk27",
              "$type": "pub.leaflet.blocks.website",
              "title": "A blog intro and a hello world! - A melly band of essayists",
              "description": "If you haven't yet, you should start your own blog!",
              "previewImage": {
                "$type": "blob",
                "ref": {
                  "$link": "bafkreif2nfyzd5d757jzzn3uxpjphkixzqsfmta36tk2m234xdmscd5bea"
                },
                "mimeType": "image/png",
                "size": 45834
              }
            }
          }
        ]
      }
    ]
  },
  "bskyPostRef": {
    "cid": "bafyreicmefktngndjimp2z6bd5d64n4sigtkeck2xmajumivy6orhbw23i",
    "uri": "at://did:plc:btxrwcaeyodrap5mnjw2fvmz/app.bsky.feed.post/3mhizlfxakc2w",
    "commit": {
      "cid": "bafyreifuf5d3ozqyk7n3wz5wmsahavl3zb43tzhh4ro42nkog2i3yruqwq",
      "rev": "3mhizlfzg6f26"
    },
    "validationStatus": "valid"
  },
  "description": "Lab Notes 024: adding curated (and custom) typefaces to Leaflet theme options, and a whole new way to add footnotes (and sidenotes!) to posts",
  "publishedAt": "2026-03-06T18:12:00.000Z"
}