← Back to all sparks
B

bskyr

DEVOPS
Velocity0.0

Interact with Bluesky Social

bskyr grew from a Bluesky scraper into a full read-write client, DMs included.

blueskyat-protocolr-clientapi-coveragemessaging
Current state
bskyr is an R client for Bluesky's AT Protocol. It started as a data-collection package with deliberately limited posting, and has since added writing, embeds, list feeds and — in 0.4.0 — direct messages. The 0.4.0 release also fixed the profile endpoint's 25-actor ceiling and a result-widening bug, so the data-gathering half is still being maintained alongside the new surface.
Where it's heading
Each release has extended what the package can do rather than how fast it does it: pagination and cursors removed the per-call result ceilings, 0.3.0 filled in the posting surface with link cards, custom timestamps and deletion, and 0.4.0 crosses into private conversations. Three vignettes shipping in the same release suggest the author now treats coverage of the protocol as broad enough to need documenting by task rather than by function.
Prediction
The remaining AT Protocol surfaces the entries have not touched — moderation and labeling — are the plausible next target, since convos were the last major read-write area left. The entries do not indicate a timeline.

Recent moves

  1. 9mo ago

    bskyr 0.4.0 adds Bluesky direct messages

    ⚡ SPARK

    Direct messages are the first private-data surface the package has touched; every prior release worked on public posts and profiles. Alongside it, the profile endpoint's 25-actor cap is lifted and OpenGraph link downloads are fixed.

    View source ↗
  2. 1y ago

    bskyr 0.3.0: link cards, custom timestamps, post deletion

    The posting surface fills out — external embed cards, a created_at argument, image aspect ratios and bs_delete_post(). Incremental against the read-write pivot of 0.1.0, but it makes programmatic posting practical rather than merely possible.

    View source ↗
  3. 2y ago

    bskyr 0.1.2 adds cursors and automatic paging

    Cursor arguments and automatic follow-up calls remove the per-endpoint result ceilings that made bulk collection awkward. This is the release that made the data-gathering side actually usable at scale.

    View source ↗
  4. 2y ago

    bskyr 0.1.0 turns a data collector into a posting client

    ⚡ SPARK

    The pivot the whole package arc rests on: 0.0.4 explicitly scoped posting down in favor of collection, and 0.1.0 reverses that with images, richtext, replies, quotes, blob upload and arbitrary record CRUD.

    View source ↗
  5. 2y ago

    bskyr 0.0.4: initial release, collection-focused

    The starting point — profile and post access with testthat and httptest2 coverage, and posting deliberately held back. Worth reading as the baseline the next release pivots away from.

    View source ↗