{
  "path": "/3m42ceodwu22z",
  "site": "at://did:plc:lehcqqkwzcwvjvw66uthu5oq/site.standard.publication/3lxv5nk6jik2k",
  "$type": "site.standard.document",
  "title": "New App: @me",
  "content": {
    "$type": "pub.leaflet.content",
    "pages": [
      {
        "$type": "pub.leaflet.pages.linearDocument",
        "blocks": [
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "src": "https://at-me.fly.dev/",
              "$type": "pub.leaflet.blocks.website",
              "title": "@me - explore your atproto identity",
              "description": "visualize your decentralized identity and see what apps have stored data in your Personal Data Server",
              "previewImage": {
                "$type": "blob",
                "ref": {
                  "$link": "bafkreig6zl6aaoarjprn35r2inrupxlzxd5bjx3zjxuhbz267cfatrzbgy"
                },
                "mimeType": "image/png",
                "size": 14230
              }
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [
                {
                  "index": {
                    "byteEnd": 3,
                    "byteStart": 0
                  },
                  "features": [
                    {
                      "uri": "https://at-me.fly.dev",
                      "$type": "pub.leaflet.richtext.facet#link"
                    }
                  ]
                },
                {
                  "index": {
                    "byteEnd": 24,
                    "byteStart": 20
                  },
                  "features": [
                    {
                      "uri": "https://bsky.app/profile/zzstoatzz.io",
                      "$type": "pub.leaflet.richtext.facet#link"
                    }
                  ]
                }
              ],
              "plaintext": "@me is a new app by Nate to explain and explore how data connects into many different kinds of apps on ATProto in an accessible, visual way."
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.bskyPost",
              "postRef": {
                "cid": "bafyreihfv4sex4p23vrljbo5xhvjnjkfoaxiulzbrxzh37k3yypkgbdtra",
                "uri": "at://did:plc:xbtmt2zjwlrfegqvch7fboei/app.bsky.feed.post/3m2mnmgsdsk2k"
              }
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [],
              "plaintext": "You can put in any ATProto account handle and explore what apps they've connected with."
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [],
              "plaintext": "A few screenshots are included below"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.header",
              "level": 2,
              "facets": [],
              "plaintext": "What is this?"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [
                {
                  "index": {
                    "byteEnd": 29,
                    "byteStart": 16
                  },
                  "features": [
                    {
                      "$type": "pub.leaflet.richtext.facet#underline"
                    }
                  ]
                }
              ],
              "plaintext": "Clicking on the what is this? shows this text."
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "alt": "(linked from what is this)\n\nyou should own your data\n\ntoday's social platforms own your data. built 10k followers? wrote years of posts? if you leave, you lose it all. you don't own your network - they do.\n\nwhat if social media worked like email?\n\nwith email, you can switch from gmail to protonmail and keep your contacts. same idea here: your posts and followers live on your own server (called a Personal Data Server). apps like bluesky just connect to it.\n\nsee it in action\n\nenter any handle above to see how atproto stores their social data.",
              "$type": "pub.leaflet.blocks.image",
              "image": {
                "$type": "blob",
                "ref": {
                  "$link": "bafkreidv6pidjbwzedwhhkejdotiswii43xj32xfwrjna2yqsjyp6vu454"
                },
                "mimeType": "image/jpeg",
                "size": 215745
              },
              "aspectRatio": {
                "width": 1206,
                "height": 1988
              }
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [],
              "plaintext": "you should own your data"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [],
              "plaintext": "today's social platforms own your data. built 10k followers? wrote years of posts? if you leave, you lose it all. you don't own your network - they do."
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [],
              "plaintext": "what if social media worked like email?"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [],
              "plaintext": "with email, you can switch from gmail to protonmail and keep your contacts. same idea here: your posts and followers live on your own server (called a Personal Data Server). apps like bluesky just connect to it."
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [],
              "plaintext": "see it in action"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [],
              "plaintext": "enter any handle above to see how atproto stores their social data."
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.header",
              "level": 2,
              "facets": [],
              "plaintext": "this is your data"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [],
              "plaintext": "Clicking on the ? mark gets you this explanation."
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "alt": "Clicking on the ? mark pops up this explanation\n\nthis is your data\n\nthis visualization shows your Personal Data Server - where your social data actually lives. unlike traditional platforms that lock everything in their database, your posts, likes, and follows are stored here, on infrastructure you control.\n\neach circle represents an app that writes to your space. bluesky for microblogging. whitewind for long-form posts. tangled.org for code hosting. they're all just different views of the same underlying data - your data.\n\nthis is what \"open social\" means: your followers, your content, your connections - they all belong to you, not the app. switch apps anytime and take everything with you. no platform can hold your social graph hostage.\n\nhow to explore: click your avatar in the center to see the details of your identity. click any app to browse the records it's created in your repository.\n\n(button that says got it, second button that says restart the tour, which explains different parts of the interface)",
              "$type": "pub.leaflet.blocks.image",
              "image": {
                "$type": "blob",
                "ref": {
                  "$link": "bafkreibim4x4irbirv5b3cor5642zocri27ueydt47qvwkaznq3az6m5zy"
                },
                "mimeType": "image/jpeg",
                "size": 296980
              },
              "aspectRatio": {
                "width": 1206,
                "height": 2436
              }
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [],
              "plaintext": "this is your data"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [],
              "plaintext": "this visualization shows your Personal Data Server - where your social data actually lives. unlike traditional platforms that lock everything in their database, your posts, likes, and follows are stored here, on infrastructure you control."
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [],
              "plaintext": "each circle represents an app that writes to your space. bluesky for microblogging. whitewind for long-form posts. tangled.org for code hosting. they're all just different views of the same underlying data - your data."
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [],
              "plaintext": "this is what \"open social\" means: your followers, your content, your connections - they all belong to you, not the app. switch apps anytime and take everything with you. no platform can hold your social graph hostage."
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [],
              "plaintext": "how to explore: click your avatar in the center to see the details of your identity. click any app to browse the records it's created in your repository."
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.header",
              "level": 2,
              "facets": [],
              "plaintext": "Your personal data server"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [],
              "plaintext": "Clicking on your avatar \"you\" in the center shows you these details:"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "alt": "(Screenshot from at-me.fly.dev)\n\nyour personal data server\n\nwhere your social data lives\n\n98 record types, 35 apps\n\nYOUR PDS LOCATION\n\nYour Personal Data Server is hosted at morel.us-east.host.bsky.network. all your posts, likes, and follows are stored here. apps like Bluesky just connect to it.\n\nEXPLORE YOUR DATA\nwant to see everything stored on your PDS? check out pdsls.dev/morel.us-east.host.bsky.network - a tool for browsing all the records in your repository\n\nview profile (link to your bsky profile)\n\ntechnical details\ndid\nhandle",
              "$type": "pub.leaflet.blocks.image",
              "image": {
                "$type": "blob",
                "ref": {
                  "$link": "bafkreibc7xurmrrpusoezk7pcijftcifebrophjlvhh3ornhoiwwmrbrea"
                },
                "mimeType": "image/jpeg",
                "size": 256106
              },
              "aspectRatio": {
                "width": 1206,
                "height": 2436
              }
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [],
              "plaintext": "Yes, my main account is on a Bluesky mushroom server! TIL that pdsls supports browsing the accounts (dids) on an entire host:"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "src": "https://pdsls.dev/morel.us-east.host.bsky.network",
              "$type": "pub.leaflet.blocks.website",
              "title": "PDSls",
              "description": "Browse the public data on atproto",
              "previewImage": {
                "$type": "blob",
                "ref": {
                  "$link": "bafkreih7z6z5helguk3bvldwan57kzzsnvzml2u3u4ehejyr66nny3wpfi"
                },
                "mimeType": "image/png",
                "size": 2522
              }
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [],
              "plaintext": ""
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.header",
              "level": 2,
              "facets": [],
              "plaintext": "Tour"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [],
              "plaintext": "The app goes through a tour which describes what is on screen."
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "alt": "A screenshot of the at-me tour. There is a circle of circular avatars representing many different apps that have stored data in this user's account.\n\natproto applications\n\nthese apps use your global identity to write public records to your PDS. they can also read records you've created.\n\n(buttons say skip and next)",
              "$type": "pub.leaflet.blocks.image",
              "image": {
                "$type": "blob",
                "ref": {
                  "$link": "bafkreih2v35lgyixfthza4orkwj5luohoe2lm45fb32rzkup67cxf3y7na"
                },
                "mimeType": "image/jpeg",
                "size": 81950
              },
              "aspectRatio": {
                "width": 1491,
                "height": 1437
              }
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [
                {
                  "index": {
                    "byteEnd": 20,
                    "byteStart": 0
                  },
                  "features": [
                    {
                      "$type": "pub.leaflet.richtext.facet#bold"
                    }
                  ]
                }
              ],
              "plaintext": "atproto applications"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [],
              "plaintext": "these apps use your global identity to write public records to your PDS. they can also read records you've created."
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.header",
              "level": 2,
              "facets": [],
              "plaintext": "View the Source"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [],
              "plaintext": "The source code for the app is on Tangled:"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "src": "https://tangled.org/@zzstoatzz.io/at-me",
              "$type": "pub.leaflet.blocks.website",
              "title": "@zzstoatzz.io/at-me",
              "description": "minimal and accessible pdsls",
              "previewImage": {
                "$type": "blob",
                "ref": {
                  "$link": "bafkreifh5gdeuscaxllfgblewv4wqs3z7p6mwwywiwvohtj2milt7nxofm"
                },
                "mimeType": "image/png",
                "size": 20832
              }
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [],
              "plaintext": "Might be interesting to have a couple of different skins and themes, or add a deploy to Railway option. These are the sorts of remixing experiments that we can all learn from."
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [],
              "plaintext": "And of course, suggested text edits or other features might be of interest to Nate as well!"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.horizontalRule"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [
                {
                  "index": {
                    "byteEnd": 23,
                    "byteStart": 0
                  },
                  "features": [
                    {
                      "$type": "pub.leaflet.richtext.facet#italic"
                    }
                  ]
                },
                {
                  "index": {
                    "byteEnd": 32,
                    "byteStart": 23
                  },
                  "features": [
                    {
                      "$type": "pub.leaflet.richtext.facet#italic"
                    },
                    {
                      "uri": "https://bsky.app/profile/bmann.ca",
                      "$type": "pub.leaflet.richtext.facet#link"
                    }
                  ]
                },
                {
                  "index": {
                    "byteEnd": 59,
                    "byteStart": 32
                  },
                  "features": [
                    {
                      "$type": "pub.leaflet.richtext.facet#italic"
                    }
                  ]
                },
                {
                  "index": {
                    "byteEnd": 74,
                    "byteStart": 59
                  },
                  "features": [
                    {
                      "$type": "pub.leaflet.richtext.facet#italic"
                    },
                    {
                      "uri": "https://bsky.app/profile/atprotocol.dev",
                      "$type": "pub.leaflet.richtext.facet#link"
                    }
                  ]
                },
                {
                  "index": {
                    "byteEnd": 156,
                    "byteStart": 74
                  },
                  "features": [
                    {
                      "$type": "pub.leaflet.richtext.facet#italic"
                    }
                  ]
                },
                {
                  "index": {
                    "byteEnd": 191,
                    "byteStart": 156
                  },
                  "features": [
                    {
                      "$type": "pub.leaflet.richtext.facet#italic"
                    },
                    {
                      "uri": "https://atprotocommunity.leaflet.pub/3lxv5wj423k2k",
                      "$type": "pub.leaflet.richtext.facet#link"
                    }
                  ]
                },
                {
                  "index": {
                    "byteEnd": 214,
                    "byteStart": 191
                  },
                  "features": [
                    {
                      "$type": "pub.leaflet.richtext.facet#italic"
                    }
                  ]
                }
              ],
              "plaintext": "This was written up by @bmann.ca, who authors a lot of the @atprotocol.dev posts. This ATProto Community leaflet is still pretty empty, just a test post of Jay's talk from ATmosphereConf 2025, including transcript."
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [
                {
                  "index": {
                    "byteEnd": 160,
                    "byteStart": 0
                  },
                  "features": [
                    {
                      "$type": "pub.leaflet.richtext.facet#italic"
                    }
                  ]
                }
              ],
              "plaintext": "Please feel free to get in touch if you have a write up for the ATProto Community that you'd like to share, and we can hand you a Leaflet edit link to write in."
            }
          }
        ]
      }
    ]
  },
  "bskyPostRef": {
    "cid": "bafyreihjfuw7pbe4e7qor5sfptykompangrsbtuxijgi47qkofltbn6ase",
    "uri": "at://did:plc:lehcqqkwzcwvjvw66uthu5oq/app.bsky.feed.post/3m42cet7cjs2z",
    "commit": {
      "cid": "bafyreicrugphihnnupybkxfclcxafdipe7ga2u3ig35k2xnqdmdmm2ksda",
      "rev": "3m42cetcpms2l"
    },
    "validationStatus": "valid"
  },
  "description": "@me explores your atproto identity",
  "publishedAt": "2025-10-25T21:09:34.471Z"
}