{
  "path": "/3lveimjgk3k2v",
  "site": "at://did:plc:btxrwcaeyodrap5mnjw2fvmz/site.standard.publication/3lppk75kw7k26",
  "$type": "site.standard.document",
  "title": "Quotes: social sharing on Bluesky!",
  "content": {
    "$type": "pub.leaflet.content",
    "pages": [
      {
        "$type": "pub.leaflet.pages.linearDocument",
        "blocks": [
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [],
              "plaintext": "We added a new feature for sharing quotes from Leaflet posts!"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [],
              "plaintext": "This has two parts, highlights and quotes, that work together:"
            }
          },
          {
            "$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": 9,
                          "byteStart": 0
                        },
                        "features": [
                          {
                            "$type": "pub.leaflet.richtext.facet#bold"
                          }
                        ]
                      }
                    ],
                    "plaintext": "Highlight an excerpt from a post, and you'll see a popover to share directly to Bluesky (or copy as a link)"
                  },
                  "children": []
                },
                {
                  "$type": "pub.leaflet.blocks.unorderedList#listItem",
                  "content": {
                    "$type": "pub.leaflet.blocks.text",
                    "facets": [
                      {
                        "index": {
                          "byteEnd": 6,
                          "byteStart": 0
                        },
                        "features": [
                          {
                            "$type": "pub.leaflet.richtext.facet#bold"
                          }
                        ]
                      }
                    ],
                    "plaintext": "Quotes open in a panel you can toggle next to the post, showing quoted parts with links to the corresponding Bluesky posts"
                  },
                  "children": []
                }
              ]
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [],
              "plaintext": "Anyone can share the highlight link, even without a Bluesky account. But when you share to Bluesky, it's saved as a quote, and those conversations live alongside the post."
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [
                {
                  "index": {
                    "byteEnd": 30,
                    "byteStart": 19
                  },
                  "features": [
                    {
                      "uri": "https://bsky.app/profile/o.simardcasanova.net/post/3luujudlr5c2j",
                      "$type": "pub.leaflet.richtext.facet#link"
                    }
                  ]
                }
              ],
              "plaintext": "Olivier wrote up a nice thread on this as well, with a demo + great points on how this shows what's possible with atproto."
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [],
              "plaintext": "⁂ ⁂ ⁂"
            },
            "alignment": "lex:pub.leaflet.pages.linearDocument#textAlignCenter"
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.header",
              "level": 2,
              "facets": [],
              "plaintext": "Sharing to spark conversations"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [
                {
                  "index": {
                    "byteEnd": 85,
                    "byteStart": 82
                  },
                  "features": [
                    {
                      "$type": "pub.leaflet.richtext.facet#italic"
                    }
                  ]
                }
              ],
              "plaintext": "We like this because it adds a direct social loop between Leaflet and Bluesky — and because it's useful both for readers and writers!"
            }
          },
          {
            "$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": "Readers can share the things that resonated most, give feedback, and use to start related discussions"
                  },
                  "children": []
                },
                {
                  "$type": "pub.leaflet.blocks.unorderedList#listItem",
                  "content": {
                    "$type": "pub.leaflet.blocks.text",
                    "facets": [],
                    "plaintext": "Writers can share questions or teasers from their own posts — along with posting on initial publish, a great way to share in more specific ways and direct the conversation"
                  },
                  "children": []
                }
              ]
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [],
              "plaintext": "I'm enjoying this as both a reader and writer…and in particular excited to use more for the casual summer blog club we're running! Browse participants' pubs here, lots of good ones to try quoting :)"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "src": "https://summer-of-pub.leaflet.pub/3luns266ud22b",
              "$type": "pub.leaflet.blocks.website",
              "title": "Leaflet blog club: initial participants - Summer of Pub",
              "description": "Here’s who’s blogging so far…reach out to be added to the list!",
              "previewImage": {
                "$type": "blob",
                "ref": {
                  "$link": "bafkreiheqyq5nzpmgjtbjxfprwipdcjowtvkmaick74cojn4b3nclniofe"
                },
                "mimeType": "image/png",
                "size": 29985
              }
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [],
              "plaintext": "This functions somewhat adjacent to comments, though more anchored on sharing than conversation, and we still have some things to figure out e.g. around notifying authors/commenters."
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [],
              "plaintext": "We'd still like to add more standard comments too, and think it'll fit nicely alongside quotes."
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.header",
              "level": 2,
              "facets": [],
              "plaintext": "⁂ ⁂ ⁂"
            },
            "alignment": "lex:pub.leaflet.pages.linearDocument#textAlignCenter"
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.header",
              "level": 2,
              "facets": [],
              "plaintext": "Notable Quotables"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [],
              "plaintext": "A few fun examples to see this in action!"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [],
              "plaintext": "Jared shared a couple great ones from Jake and JT:"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "src": "https://jakefee.leaflet.pub/3lr47xhlnzc2q/l-quote/28_0-28_467#28_0",
              "$type": "pub.leaflet.blocks.website",
              "title": "[003] Silver Institutions - Dreaming at the Edge of the Apocalypse",
              "description": "Sunday 8 June 2025",
              "previewImage": {
                "$type": "blob",
                "ref": {
                  "$link": "bafkreih7o2gkslakk3aid2zodmdu5z5ltevjmhplvhfulsyaw7ddhrnl24"
                },
                "mimeType": "image/png",
                "size": 50877
              }
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "src": "https://not-yet-thinking.leaflet.pub/3lv5gbcjew22x/l-quote/21_0-21_445#21_0",
              "$type": "pub.leaflet.blocks.website",
              "title": "Fungo Zone - not yet thinking",
              "description": "The web is rotting, enjoy it!",
              "previewImage": {
                "$type": "blob",
                "ref": {
                  "$link": "bafkreifyaji4edjemhlb2aoitzzqhutjaoz7smys5lm2riqkbgcanh5diq"
                },
                "mimeType": "image/png",
                "size": 68115
              }
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [],
              "plaintext": "Here's one Bread shared from one of my Scraps! posts:"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "src": "https://scraps.schlage.town/3lvbvspr6bc2i/l-quote/6.4_0-6.4.0_154#6.4_0",
              "$type": "pub.leaflet.blocks.website",
              "title": "On a snapshot from the Morgan Library… - Scraps!",
              "description": "Exploring and annotating a list of (very old; rich with intrigue) book titles jotted down on a library visit, ten years later.",
              "previewImage": {
                "$type": "blob",
                "ref": {
                  "$link": "bafkreib4zprkjl62yjar3bmtymnats7uwyodqxjud3d46hcjea73po3sje"
                },
                "mimeType": "image/png",
                "size": 50517
              }
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [],
              "plaintext": "And I've been playing with quotes a bunch too!"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "src": "https://dungeon-merlin.leaflet.pub/3lv7pjujrn22u/l-quote/10_0-10_363#10_0",
              "$type": "pub.leaflet.blocks.website",
              "title": "Towards a Framework for Authoring Adventures - Dungeon Merlin",
              "description": "Dice Goblin Games wrote a great blog post about how primitive it can feel to be reading RPGs and Adventures as PDFs on your screen. It’s like the old joke of most MacBooks being $2000 Facebook machines. Only sadder, because at least Facebook downloads a lot of JavaScript on first load, which is already an important step towards what I’ll be describing below.",
              "previewImage": {
                "$type": "blob",
                "ref": {
                  "$link": "bafkreiezdny7itwx7k7zqwdsnzrmu6nxdpebqcywnnbvdixzccj2u6unve"
                },
                "mimeType": "image/png",
                "size": 33531
              }
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "src": "https://roxxiblogs.leaflet.pub/3luzlamck6s2j/l-quote/1_0-1_450#1_0",
              "$type": "pub.leaflet.blocks.website",
              "title": "ALBUMS YOU SHOULD LISTEN TO ! - ✨ Library of Arts ✨",
              "description": "My list of perfect Albums",
              "previewImage": {
                "$type": "blob",
                "ref": {
                  "$link": "bafkreif4koysp3ozzumulzi27wmb7lpy5duwlj2d5ddgsewhzuepjrbzoq"
                },
                "mimeType": "image/png",
                "size": 29946
              }
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "src": "https://htmlenergy.leaflet.pub/3luuqcx237k2x/l-quote/2_0-3_159#2_0",
              "$type": "pub.leaflet.blocks.website",
              "title": "HTML Day ✺ Saturday, August 2, 2025 - HTML Energy",
              "description": "On Saturday, August 2nd, 2025, we’ll be gathering in places around the world to write and celebrate HTML.",
              "previewImage": {
                "$type": "blob",
                "ref": {
                  "$link": "bafkreif2rzv4m75uthfvqebtbmldjywujryrynccjoqaohomijrkk37hqe"
                },
                "mimeType": "image/png",
                "size": 61640
              }
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [],
              "plaintext": "^btw, HTML Day 2025 is happening tomorrow, and we're proud to help sponsor! Take a look & see if there's an event near you ✨❇️"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [],
              "plaintext": "⁂ ⁂ ⁂"
            },
            "alignment": "lex:pub.leaflet.pages.linearDocument#textAlignCenter"
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [],
              "plaintext": "Let us know if you have thoughts / feedback on this or other social features you'd like to see us explore next!"
            }
          }
        ]
      }
    ]
  },
  "bskyPostRef": {
    "cid": "bafyreigbtirkahd4dv7imsesltc2ve54imycbz43b2szhxsfc4iwvwrdnm",
    "uri": "at://did:plc:btxrwcaeyodrap5mnjw2fvmz/app.bsky.feed.post/3lveind4jsc2v",
    "commit": {
      "cid": "bafyreicn3wcfc27upu6lwtfjbmfv4yu4meba5qeltnxh7tcrzbscqm2ivu",
      "rev": "3lveind74uj2o"
    },
    "validationStatus": "valid"
  },
  "description": "Lab Notes 008: a way to highlight and post excerpts from Leaflet publications to Bluesky, to share love & start conversations!",
  "publishedAt": "2025-08-01T20:31:36.190Z"
}