dan
@danabra.mov
13 documents
34 likes
21 shares
#33 AIS 6.65
Sep 2025 since
View on Bluesky
we can just do things

"you can just do things".

but also, "we".

i've been bitching about the Discover feed and how it isn't getting much better while the alternatives don't get the same amount of data (no "show more/less" buttons, no "seen" tracking) and thus are at a disadvantage. and then Grace just went ahead and added the "show more/less" buttons to third-party feeds in a pull request.

i've also been bitching…

Read more →
atproto made simple: publishing lexicons

i find some atproto documentation extremely confusing. the section about publishing lexicons is one of those parts that makes me want to tear my hair out. it sounds so hopelessly complicated.

so i'm here to tell you publishing lexicons is actually very simple.

yes, you can use the goat tool to do it for you, but i want to give you a clear mental model so you know what it does and why.

what…

Read more →
how to manage your AT Lexicons with lpm

if you're writing an AT application you probably have a lexicons folder in your repo with all of your Lexicons in JSON.

it might look something like this

this is fine and it works but it's a bit annoying to keep them up to date or even to find them in the first place.

luckily Tom Sherman made a little utility called lpm that does this for you. it's prerelease software so maybe don't depend on…

Read more →
slop lasagna

i think i might have first heard this from Ryan Florence. the idea is that code is often garbage, but react components are nice because they divide that garbage into boxes that are individually replaceable.

it's easy to delete a react component, to fork it, to inline it, or to rewrite it from scratch. generally you only need to reason about the code locally. as long as your component tree design…

Read more →
atproto made simple: granular permissions

you're working on an atproto app that needs to write some records to your own collection like app.example.post or app.example.like.

you're already using OAuth instead of app passwords. however you're still requesting transition:generic scope, which means your app is asking for way too much power. that's not good!

you've tried reading the official Permission Sets documentation and felt that this…

Read more →
Page 1