connecting new atproto developers

@atlearning.place

As new developers starting with atproto.com we are greeted with a get started Statusphere app that pieces together all the key components for a simple app from oAuth to reading and writing records to creating customs schema with Lexicon language. It also has an ingester that filters the statusphere collection to listen to an aggregated firehose using a relay service. More on how we use this ingester for connecting new atproto developers, but if you are one and getting confused already, highly recommend starting with Dan's Web Without Walls and Joe's Exploring atproto vidoes.

Aside from all technical details and data ownership lifted to the user and the possibility of this decentralized social layer, what sold bsky.app for me was that there is a feed for everything and anything and users can define their experience. Ofcourse we needed a feed to connect new atproto developers and new@dev was made using the aforementioned ingester so that when an interaction happens on the statusphere app, it posts a message to @learning.place which is used in the feed so people can find fellow new developers.

Bluesky docs has a starter template for generating custom feeds and we will use the publish feed script and host it on a $4 droplet from Digital Ocean as all it needs is an express app running and caddy to reverse proxy the hostname. We extended the ingester to make a post when a status record is created as bsky.app does not show arbitrary custom types yet though there was mention of some changes coming at the ATmosphere conf. Now we two API endpoints /.well-known/did.json that has the hostname for where the feed is deployed to and /xrpc/app.bsky.feed.getFeedSkeleton that actually returns an array or posts with the URI fetched from the database. The limit for posts returned is set to 30 to match the limit of the bsky.app. You could implement pagination utilizing the cursor property and make a PR when done 😊 You might notice the app still does not show all 30 posts and this is a known bug. Might attempt making a PR for that next as bsky.app is also open-source with 1.8k posted issues, we are all team bsky/atproto and more contributions will allow for faster innovation iteration.

Join @learning.place to share your stories and come chat on roomy.

atlearning.place
@learning

@atlearning.place

atproto zero-to-hero academy
⌨️ @10xcrazy.horse

Post reaction in Bluesky

*To be shown as a reaction, include article link in the post or add link card

Reactions from everyone (0)