{
  "$type": "site.standard.document",
  "bskyPostRef": {
    "cid": "bafyreidnnxgv5i32qkd5zk2qkjoiblf3kqwn3ohqdfjazssc3rumywz7am",
    "uri": "at://did:plc:oio4hkxaop4ao4wz2pp3f4cr/app.bsky.feed.post/3m5wgr3eu422m"
  },
  "description": "I come across a lot of blog posts about the AT Protocol and Bluesky technicals – both on Bluesky official blogs and those of the team members, and by independent developers from the community. So many people are blogging now (especially now that Leaflet got popular in these circles) that I started using an RSS reader again just to keep up with everything.\n\nThese posts are usually shared widely for a day or two, and then kind of forgotten – but a lot of them contain some valuable knowledge that is still relevant much later. Even if someone remembers that something like this has been written, it’s not always easy to dig it out from the archive.\n\nI thought it would be nice to have one place collecting those old and newer blog posts to make them easier to find. So I went through those RSS feeds, my like archives and other places, and collected everything I could find here in an organized list. I also included the documents from the “Proposals” GitHub repo, and various posts from the “Discussions” section in the ATProto repo.\n\nThis is a subjective selection – from many blogs I skipped some less relevant posts or only included a couple out of many – so if you’re interested, click through to the home page from any post and look for the other posts there.\n\nSearch posts by title: \n\nBluesky official sources\n\natproto.com\n\nATProto for distributed systems engineers (Sep 2024)\nAtproto Ethos (Apr 2025)\n\nbsky.social/about/blog\n\nComposable Moderation (Apr 2023)\nHow to verify your Bluesky account (Apr 2023)\nFederation Architecture Overview (May 2023)\nBluesky: An Open Social Web (Feb 2024)\nBluesky’s Stackable Approach to Moderation (Mar 2024)\nTips and Tricks for Bluesky Search (May 2024)\nBluesky Welcomes Mike Masnick to Board of Directors (Aug 2024)\nBluesky Announces Series A to Grow Network of 13M+ Users (Oct 2024)\n2024 In Review (Dec 2024)\nBluesky’s Patent Non-Aggression Pledge (Oct 2025)\nWhat’s Next at Bluesky (Jan 2026)\n\ndocs.bsky.app\n\n  Click to expand\n\n2023\n\nWhy are blocks on Bluesky public? (Jun 2023)\nFeatured Community Project: Skyfeed (Aug 2023)\nPosting via the Bluesky API (Aug 2023)\nUpdates to Repository Sync Semantics (Aug 2023)\nRate Limits, PDS Distribution v3, and More (Sep 2023)\nBluesky BGS and DID Document Formatting Changes (Oct 2023)\n2023 Protocol Roadmap (Oct 2023)\nDownload and Parse Repository Exports (Nov 2023)\nFeatured Community Project: Bridgy Fed (Dec 2023)\n\n2024\n\nEarly Access Federation for Self-Hosters (Feb 2024)\nAnnouncing AT Protocol Grants (Mar 2024)\nBluesky’s Moderation Architecture (Mar 2024)\nMeet the second batch of AT Protocol Grant Recipients (Apr 2024)\n2024 Protocol Roadmap (May 2024)\nLabeling Services Microgrants (May 2024)\nTypescript API Package Auth Refactor (Aug 2024)\nOAuth for AT Protocol (Sep 2024)\nLexicons, Pinned Posts, and Interoperability (Oct 2024)\nIntroducing Jetstream (Oct 2024)\nRelay Operational Updates (Nov 2024)\n\n2025\n\nLooking Back At 2024 AT Protocol Development (Jan 2025)\n2025 Protocol Roadmap (Spring and Summer)…",
  "path": "/2025/11/18/atproto-blog-posts/",
  "publishedAt": "2025-11-18T00:06:35Z",
  "site": "at://did:plc:oio4hkxaop4ao4wz2pp3f4cr/site.standard.publication/3mn5mackuba26",
  "tags": [
    "Social"
  ],
  "textContent": "I come across a lot of blog posts about the AT Protocol and Bluesky technicals – both on Bluesky official blogs and those of the team members, and by independent developers from the community. So many people are blogging now (especially now that Leaflet got popular in these circles) that I started using an RSS reader again just to keep up with everything.\n\nThese posts are usually shared widely for a day or two, and then kind of forgotten – but a lot of them contain some valuable knowledge that is still relevant much later. Even if someone remembers that something like this has been written, it’s not always easy to dig it out from the archive.\n\nI thought it would be nice to have one place collecting those old and newer blog posts to make them easier to find. So I went through those RSS feeds, my like archives and other places, and collected everything I could find here in an organized list. I also included the documents from the “Proposals” GitHub repo, and various posts from the “Discussions” section in the ATProto repo.\n\nThis is a subjective selection – from many blogs I skipped some less relevant posts or only included a couple out of many – so if you’re interested, click through to the home page from any post and look for the other posts there.\n\nSearch posts by title: \n\nBluesky official sources\n\natproto.com\n\nATProto for distributed systems engineers (Sep 2024)\nAtproto Ethos (Apr 2025)\n\nbsky.social/about/blog\n\nComposable Moderation (Apr 2023)\nHow to verify your Bluesky account (Apr 2023)\nFederation Architecture Overview (May 2023)\nBluesky: An Open Social Web (Feb 2024)\nBluesky’s Stackable Approach to Moderation (Mar 2024)\nTips and Tricks for Bluesky Search (May 2024)\nBluesky Welcomes Mike Masnick to Board of Directors (Aug 2024)\nBluesky Announces Series A to Grow Network of 13M+ Users (Oct 2024)\n2024 In Review (Dec 2024)\nBluesky’s Patent Non-Aggression Pledge (Oct 2025)\nWhat’s Next at Bluesky (Jan 2026)\n\ndocs.bsky.app\n\n  Click to expand\n\n2023\n\nWhy are blocks on Bluesky public? (Jun 2023)\nFeatured Community Project: Skyfeed (Aug 2023)\nPosting via the Bluesky API (Aug 2023)\nUpdates to Repository Sync Semantics (Aug 2023)\nRate Limits, PDS Distribution v3, and More (Sep 2023)\nBluesky BGS and DID Document Formatting Changes (Oct 2023)\n2023 Protocol Roadmap (Oct 2023)\nDownload and Parse Repository Exports (Nov 2023)\nFeatured Community Project: Bridgy Fed (Dec 2023)\n\n2024\n\nEarly Access Federation for Self-Hosters (Feb 2024)\nAnnouncing AT Protocol Grants (Mar 2024)\nBluesky’s Moderation Architecture (Mar 2024)\nMeet the second batch of AT Protocol Grant Recipients (Apr 2024)\n2024 Protocol Roadmap (May 2024)\nLabeling Services Microgrants (May 2024)\nTypescript API Package Auth Refactor (Aug 2024)\nOAuth for AT Protocol (Sep 2024)\nLexicons, Pinned Posts, and Interoperability (Oct 2024)\nIntroducing Jetstream (Oct 2024)\nRelay Operational Updates (Nov 2024)\n\n2025\n\nLooking Back At 2024 AT Protocol Development (Jan 2025)\n2025 Protocol Roadmap (Spring and Summer) (Mar 2025)\nRelay Updates for Sync v1.1 (May 2025)\nNetwork Account Management (May 2025)\nOAuth Improvements (Jun 2025)\nCreating an Independent Public Ledger of Credentials (PLC) Directory Organization (Sep 2025)\nTaking AT to the IETF (Sep 2025)\nEnabling Account Migration Back to Bluesky’s PDS (Sep 2025)\nProtocol Check-in (Fall 2025) (Oct 2025)\nRequest For Comments: A secure contact import scheme for social networks (Nov 2025)\nIntroducing Tap: Repository Synchronization Made Simple (Dec 2025)\n\n2026\n\nUpcoming Relay Transition (Jan 2026)\n\ngithub.com/bluesky-social/atproto/discussions\n\n  Click to expand\n\n2023\n\nbrainstorm ideas for Cool Developer Tools (Feb 2023)\nIntention to remove repository history (Jul 2023)\nPlanned Changes to DID Documents (August 2023) (Aug 2023)\nDID PLC Rate Limits and Validation (Sep 2023)\nUpcoming Disruptive Protocol and Infra Changes (Oct 2023)\nMigrating bsky.social to Multiple PDS Instances (Nov 2023)\nThat which we call a “BGS”, By any other name would smell as sweet (Nov 2023)\nTightening Datetime, Record Key, and TID validation (Dec 2023)\n\n2024\n\nProtocol Tech Debt (Feb 2024)\nSummary of Recent Changes (Feb 2024)\nMarch 2024 Protocol Updates (Mar 2024)\nWhat does a PDS implementation entail? (Mar 2024)\nWhat goes in to a Bluesky or atproto SDK? (Apr 2024)\nOAuth Roadmap (Jul 2024)\nService auth token iteration – method binding & nonces (Aug 2024)\nBrainstorming: atproto Dev Tooling and Experience (Aug 2024)\nWhat does an AppView implementation entail? (Nov 2024)\nRelay Operational Updates (Nov 2024)\nCall for Developer Projects (Nov 2024)\nRFC: Lexicon Resolution (Nov 2024)\nAccount Lifecycle Best Practices (Dec 2024)\nAccount Migration Details (Dec 2024)\n\n2025\n\nProposal: OAuth Scopes (Mar 2025)\nRelaxing DID PLC Verification Method Constraints (Jul 2025)\nOAuth Client Security in the Atmosphere (Jul 2025)\nAdding internal repositories to Bluesky’s workflows (Jul 2025)\nProgress on Auth Scopes Implementation (August 2025) (Aug 2025)\nDraft Lexicon Style Guide (Lexinomicon) (Oct 2025)\nPLC Operational Updates (Oct 2025)\nLexicon Language Corner Cases (Nov 2025)\nEarly Permission Sets (Dec 2025)\n\n2025\n\nPLC Export API Update (Jan 2026)\nAdding content-disposition on getBlob HTTP responses (Feb 2026)\n\ngithub.com/bluesky-social/proposals\n\n0001: User Lists, Reply-Gating, and Thread Moderation (Jun 2023)\n0002: Labeling and Moderation Controls (Jun 2023)\n0003: Hashtags (Jun 2023)\n0004: OAuth 2.0 for the AT Protocol (Feb 2024)\n0005: Ozone Moderation History (Oct 2024)\n0006: AT Protocol Sync v1.1 (Feb 2025)\n0007: Moderation Report Routing (Feb 2025)\n0008: User Intents for Data Reuse (Mar 2025)\n0009: Moderation Report Granularity (May 2025)\n0010: Client assertion backend for browser-based applications (Jun 2025)\n0011: Auth Scopes for ATProto (Jun 2025)\n0012: Infrastructure Abuse Notices (Nov 2025)\n\nBluesky team\n\njaygraber.medium.com (Jay Graber, CEO)\n\nWeb3 is Self-Certifying (Dec 2021)\n\npfrazee.com (Paul Frazee, CTO)\n\nWhy RichText facets in Bluesky (Jan 2024)\nWhy not RDF in the AT Protocol? (Jan 2024)\nWhy isn’t Bluesky a peer-to-peer network? (Jan 2024)\nGuidance on Authoring Lexicons (Mar 2025)\nAtmospheric Computing (Dec 2025)\nPractical Decentralization (Feb 2026)\n\npfrazee.leaflet.pub (Paul Frazee, CTO)\n\nWe probably need to rename the AppView (Sep 2025)\nUpdate on Protocol Moderation (Sep 2025)\nPrivate data: developing a rubric for success (Sep 2025)\nThree schemes for shared-private storage (Sep 2025)\nSocial platforms are not neutral (Oct 2025)\nThe politics of purely client-side apps (Nov 2025)\n\nbnewbold.net (Bryan Newbold)\n\nProgress on atproto Values and Value Proposition (Aug 2024)\n\nwhtwnd.com/bnewbold.net (Bryan Newbold)\n\nNotes on Running a Full-Network atproto Relay (Jul 2024)\nMigrating PDS Account with ‘goat’ (Oct 2024)\nReply on Bluesky and Decentralization (Nov 2024)\nRegistering Identity Recovery Keys via PDS, using goat (Feb 2025)\nA Full-Network Relay for $34 a Month (May 2025)\nAT Moderation Architecture (Oct 2025)\nCreating a did:web atproto account using goat (Jan 2026)\n\nbnewbold.leaflet.pub (Bryan Newbold)\n\nAT Namespaces for Community Spaces (Oct 2025)\nRecord Versioning (Nov 2025)\nBig Indexing (Dec 2025)\nCommunity Spaces on AT Protocol (Feb 2026)\n\ndholms.leaflet.pub (Daniel Holms)\n\nPLC Threat-modeling & Auditability (Dec 2025)\nPermissioned Data Diary 1: To Encrypt or Not to Encrypt (Feb 2026)\nPermissioned Data Diary 2: Buckets (Feb 2026)\n\njimray-bsky.leaflet.pub (Jim Ray)\n\nThe Importance of Backfillability (Dec 2025)\n\nmozzius.dev (Samuel)\n\nReact Native, and “the native feel” (Oct 2024)\nATProto by example part 1: Records and Views (Mar 2025)\n\nemilyliu.me (Emily Liu, ex-Bluesky)\n\nUsing Bluesky posts as blog comments (Nov 2024)\n\njazco.dev (Jaz, ex-Bluesky)\n\nSolving Thundering Herds with Request Coalescing in Go (Sep 2023)\nScaling Go to 192 Cores with Heavy I/O (Jan 2024)\nYour Data Fits in Memory (GraphD Part 1) (Apr 2024)\nAn entire Social Network in 1.6GB (GraphD Part 2) (Apr 2024)\nHow HLS Works (Jul 2024)\nJetstream: Shrinking the AT Proto Firehose by >99% (Sep 2024)\nWhen Imperfect Systems are Good, Actually: Bluesky’s Lossy Timelines (Feb 2025)\nTurning Billions of Strings into Integers Every Second Without Collisions (Sep 2025)\n\nATProto community\n\nwhtwnd.com/futur.blue (Futur)\n\natproto relay any% speedrun (Mar 2025)\nin and out, quick appview adventure (Jun 2025)\n\noverreacted.io (Dan Abramov, ex-Bluesky)\n\nOpen Social (Sep 2025)\nWhere It’s at:// (Oct 2025)\nA Social Filesystem (Jan 2026)\n\nunderreacted.leaflet.pub (Dan Abramov, ex-Bluesky)\n\nwe can just do things (Oct 2025)\n\nbsky.bad-example.com (Phil)\n\nconsuming the jetstream firehose correctly (Feb 2025)\nCan atproto scale down? (Feb 2025)\n\nmackuba.eu 🙃\n\nA complete guide to Bluesky (Feb 2024)\nIntroduction to AT Protocol (Aug 2025)\nRunning Bluesky PDS undockered (Feb 2026)\n\nshreyanjain.net (Shreyan)\n\nNostr and ATProto (Jul 2024)\n\njcsalterego.leaflet.pub (Jerry Chen)\n\nWe live in a space station (Oct 2025)\n\nda.vidbuchanan.co.uk (David Buchanan, @retr0.id)\n\nHijacking Bluesky Identities with a Malleable Deputy (Sep 2023)\nAdversarial ATProto PDS Migration (Jul 2025)\n\nmarvins-guide.leaflet.pub (Bailey Townsend)\n\nHost a PDS via a Cloudflare Tunnel (Jul 2025)\nA blob in the bucket (Aug 2025)\nWhat the hell is the atmosphere anyway (Sep 2025)\nWhat the hell is a rotation key?  (Nov 2025)\n\ndame.is (Dame)\n\nHow I made an automated dynamic avatar for my Bluesky profile (Feb 2025)\nCreating a decentralized bathroom (powered by the AT Protocol) (Mar 2025)\nA guestbook and welcome message for my atproto PDS (May 2025)\n\nsteveklabnik.com (Steve Klabnik)\n\nHow Does BlueSky Work? (Feb 2024)\n\nknotbin.leaflet.pub (Roscoe Rubin-Rottenberg)\n\nWherever you get your Podcasts (Aug 2025)\n\nblog.smokesignal.events\n\nCreating a did-method-web Identity for ATProtocol (Aug 2025)\n\ngraysky.app\n\nAdding comments to this blog (Feb 2024)\n\nOther recommended blogs\n\nConnected Places newsletter (Laurens Hof)\nConnected Places Leaflet (Laurens Hof)\nHow Streamplace Works (Eli Mallon)\nTangled engineering (@tangled.org)\nNick’s Blog (Nick Gerakines)\nBailey’s Weekly Retrospective (Bailey Townsend)\ndame’s leaflets (Dame)\nicy takes (Anirudh Oppiliappan)\nJuliet’s rambles (Juliet)\nmildly at-musing (Samuel)\nThe Smoke Signal blog (@smokesignal.events)\nMatthieu’s Leaflet (Matthieu Sieben)\naugment (Anuj Ahooja)\nTree For You (Tree)\nA New Social (Bridgy Fed)\nKuba’s Lab Notes 😉\n\n  document.getElementById('blog_post_search').addEventListener('input', (e) => {\n    let query = e.target.value.trim().toLowerCase();\n    let entries = Array.from(document.querySelectorAll('article ul li'));\n    let details = Array.from(document.querySelectorAll('article details'));\n    let headers = Array.from(document.querySelectorAll('article h4'));\n\n    function ulHasVisibleEntries(h) {\n      return Array.from(h.nextElementSibling.querySelectorAll('li')).some(x => x.style.display === '');\n    }\n\n    if (query.length > 0) {\n      entries.forEach(li => { li.style.display = (li.innerText.toLowerCase().includes(query) ? '' : 'none') });\n      headers.forEach(h => { h.style.display = (ulHasVisibleEntries(h) ? '' : 'none') })\n      details.forEach(d => { d.open = true });\n    } else {\n      entries.forEach(li => { li.style.display = '' });\n      headers.forEach(h => { h.style.display = '' })\n      details.forEach(d => { d.open = false });\n    }\n  });",
  "title": "ATProto blog posts collection",
  "updatedAt": "2026-06-01T00:51:15Z"
}