Kshitij @haroldadmin.com · 4hThis looks very cool! Glad to see a lot of ATProto users want projects like this :) 000 0
Kshitij @haroldadmin.com · 4hMore like AllTrails, less like Strava. Not planning to add workout tracking features, but never say never! 100 1
Kshitij @haroldadmin.com · 25/10/2026Fun fact: this site runs _entirely_ on my humble homelab! Who says ATProto appviews have to be resource intensive? 040 4
Kshitij @haroldadmin.com · 25/10/2026Fun project I've been working on the side for a couple of months now. I quite like cycling, but I hate that I need to sign up for Strava/Komoot just to be able to share routes. In the spirit of rewilding the internet with ATProto, I figured why not build an open alternative? www.attrails.appattrails.appATTrailsDiscover and share cycling, running, and hiking routes on the open social web. 3417 41
Kshitij @haroldadmin.com · 23/10/2026(am aware of the atproto docs on the topic, More interested in your experience running the moderation stack) 001 1
Kshitij @haroldadmin.com · 23/10/2026For those who build and maintain ATProto apps, how are you doing moderation? 110 1
Reposted by KshitijATProto London • Bluesky social events in London, UK @atproto.london · 13/10/2026Our autumn event will be on Monday, 9 November at Newspeak House in Shoreditch. So far we have @aendra.com talking about her @moji.blue project; if you'd like to do a 10-15 minute talk at our event, please get in touch! luma.com/f86ebld5luma.comATProto London November · LumaCurious about how Bluesky is different from other social network websites? Interested in building cool stuff using atproto, the underlying technology powering… 0136 13
Kshitij @haroldadmin.com · 12/10/2026Turns out the native Github stacked PRs only track up to 10 PRs in the web UI. Any other PR in the stack is only viewable in the CLI 000 0
Kshitij @haroldadmin.com · 31/08/2026Finally found some time this weekend to add some long overdue features: oauth, better record UX, and the ability to delete records. Next on the list: ability to create and update existing records. No ETA on support for ATProto spaces yet, but it's on my mind :) 000 0
Kshitij @haroldadmin.com · 04/08/2026I thought it was a freemium app at this point - if you don’t pay, the experience is unusable. Sounds like paying doesn’t change things either! 000 0
Kshitij @haroldadmin.com · 04/08/2026Can confirm that it works well now, i can see my PDS contains site.standard.document records for each post. Thanks for fixing this so quickly! 110 1
Kshitij @haroldadmin.com · 03/08/2026interestingly enough, no site.standard.document records yet, i'll look into it tonight. 200 2
Kshitij @haroldadmin.com · 03/08/2026@annot.at is a delightful project ✨annot.atannot.atannot.at watches your RSS feed and publishes every new post to atproto using the standard.site lexicon, so readers across Leaflet, pckt.blog, Offprint, and any other ATmosphere reader can find it. 020 2
Kshitij @haroldadmin.com · 03/08/2026Very sensible, thank you for the help. Everything seems to be published now. 100 1
Kshitij @haroldadmin.com · 02/08/2026@jola.dev i can't seem to publish from my site on annot.at "publish" is disabled, and "publish all" seems to not do anything. Anything I could be doing wrong? Thanks! 130 3
Reposted by KshitijATProto London • Bluesky social events in London, UK @atproto.london · 13/07/2026We'll be back at Newspeak House's beautiful covered terrace on 30 July for our second annual summer drinks social. No talks or presentations, just lovely drinks and chats with people in the community. RSVP here! luma.com/42emvbsyluma.comatproto.london summer drinks · LumaCurious about how Bluesky is different from other social network websites? Interested in building cool stuff using atproto, the underlying technology powering… 12311 23
Kshitij @haroldadmin.com · 05/03/2026Note that this feed includes the full article contents, not just links or previews 000 0
Kshitij @haroldadmin.com · 05/03/2026I got nostalgic for RSS feeds, and then I realised I don't have one on my blog. Glaring omission, I know, but I've just fixed it. You can now consume the stuff I write through a /rss.xml feed (/atom.xml works too!) blog.haroldadmin.com/rss.xmlblog.haroldadmin.comBlog | Kshitij ChauhanA blog about programming and technology. 110 1
Kshitij @haroldadmin.com · 03/03/2026Wrote down the lessons I've learned after working at Let's Do This for the last three and a half years. Hope it is useful to everyone! blog.haroldadmin.com/posts/lesson...blog.haroldadmin.comLessons from Let's Do ThisAfter three and a half years at Let's Do This, it is time to introspect and record my learnings before I move on to a different role. 000 0
Kshitij @haroldadmin.com · 16/11/2025This looks awesome! Do you know if a recording of the talk will be available to watch online? 100 1
Kshitij @haroldadmin.com · 15/11/2025TIL you can inspect and modify the AST of code highlighted with Shiki! 000 0
Kshitij @haroldadmin.com · 10/11/2025Ever wondered why your ATProto public key looks the way it does? Here's an explainer! blog.haroldadmin.com/posts/intros... #atprotoblog.haroldadmin.comIntrospecting Public Keys in ATProto | haroldadminA closer look at the self-describing structure of public keys in ATProto. 091 9
Reposted by KshitijATProto Browser @atproto-browser.dev · 05/11/2025Just shipped: ability to list blobs in a repository! When inspecting a data repository in ATProto Browser, you can now also see a list of blobs in that repo. 031 3
Kshitij @haroldadmin.com · 26/05/2025Definitely Nextra, as I’m already deep into the Next.js ecosystem. Site looks great, has built in search with Pagefind, great internationalisation support too. 010 1
Reposted by KshitijATProto Browser @atproto-browser.dev · 22/05/2025Just shipped: Syntax highlighting for records! We've integrated Shiki for server-side syntax highlighting on the records page. When looking at the raw JSON data for a record, you should now get beautiful, semantically highlighted text. 021 2
Kshitij @haroldadmin.com · 20/04/2025I also wrote a plugin to help you run remote MCP servers over a Fastify app! github.com/haroldadmin/...github.comGitHub - haroldadmin/fastify-mcp: Run Model Context Protocol servers using FastifyRun Model Context Protocol servers using Fastify. Contribute to haroldadmin/fastify-mcp development by creating an account on GitHub. 010 1
Kshitij @haroldadmin.com · 20/04/2025Been meaning to write this one for a while now. blog.haroldadmin.com/posts/brief-...blog.haroldadmin.comA Brief Introduction to the Model Context ProtocolA high level overview of the Model Context Protocol 100 1
Kshitij @haroldadmin.com · 12/12/2024Wrote something about handling backpressure in Web Sockets using the Streams API. blog.haroldadmin.com/posts/backpr...blog.haroldadmin.comBackpressure in WebSockets using Web StreamsThe WebSocket API does not support backpressure. The Web Streams API does. Wouldn't it be great if we could use them together? 011 1
Kshitij @haroldadmin.com · 10/12/2024Interesting idea! The feed is built on top of Jetstream which does not support filtering on regexes. However, it shouldn’t be too hard to support this client side. I’ll see what I can do 😊 110 1
Reposted by KshitijATProto Browser @atproto-browser.dev · 09/12/2024Just shipped: Ability to view DID documents alongside a user's collections. This was a sorely missing feature from ATProto Browser so far. You can now see a nicely formatted DID document for the user in that app, as well as the raw JSON version. www.atproto-browser.dev 021 2
Kshitij @haroldadmin.com · 07/12/2024I've setup @atproto-browser.dev to post updates on development -- which is also the new domain for the app ✨ www.atproto-browser.devatproto-browser.devATProto BrowserExperimental browser for the Atmosphere 130 3
Kshitij @haroldadmin.com · 05/12/2024I might add support for specifying a custom sampling rate in the future, as well as increasing the number of posts buffered in memory. In the meantime, feel free to look around the code on Github github.com/haroldadmin/...github.comGitHub - haroldadmin/atproto-browser: Browser for files stored on the ATProto networkBrowser for files stored on the ATProto network. Contribute to haroldadmin/atproto-browser development by creating an account on GitHub. 020 2
Kshitij @haroldadmin.com · 05/12/2024At the end of the pipeline is a Writable Stream, which is just fake wrapper around something that a React component can subscribe to. The Feed component takes care of buffering the latest posts in memory, and discards the rest. GC is great, isn't it? 100 1
Kshitij @haroldadmin.com · 05/12/2024The pipeline roughly looks like this: Web Socket -> Readable Stream -> Transforms -> Writable Stream. This lets me use the built-in backpressure support in web streams, but I also sample incoming updates to keep things running smoothly. 110 1
Kshitij @haroldadmin.com · 05/12/2024Jetstream's Web Socket API emits hundreds of updates every second -- enough to overwhelm the browser if not managed carefully. Unfortunately, there is no standard way to solve backpressure in Web Sockets on the browser. The feed solves this by using a Web Streams layer. 100 1
Kshitij @haroldadmin.com · 05/12/2024While this might look similar to Firesky.tv, the technical implementation is very different. ATProto Browser uses a fully client-side feed built on top of Bluesky's Jetstream project - no polling required! More details in 🧵firesky.tvFireskyWatch every Bluesky post in real-time – filter the firehose 100 1
Kshitij @haroldadmin.com · 05/12/2024If you like a live scrolling list of Bluesky posts from around the world, here is something for you. I've just shipped an update to my open source ATProto Browser that shows a live feed of Bluesky posts from the firehose. Try it and let me know what you think! atproto-browser.haroldadmin.com 351 5
Kshitij @haroldadmin.com · 01/12/2024Also shout out to pdsls.dev!pdsls.devPDSlsBrowse AtProto repositories 020 2
Kshitij @haroldadmin.com · 01/12/2024I know, i know, this is yet another atproto browser. I built it as a way to learn more about the protocol itself, and it was quite a fun exercise. The source code for OG atproto browser was very useful when I couldn't figure something out on my own. 110 1
Kshitij @haroldadmin.com · 01/12/2024ATProto is fascinating, and I built a tool to explore the data stored on it. Give it a go and let me know what you think! atproto-browser.haroldadmin.comatproto-browser.haroldadmin.comATProto BrowserExperimental browser for the Atmosphere 240 4