Skip to content

agentio/statusphere

Repository files navigation

statusphere

This repository contains an aggressively-simplified Go implementation of the ATProtocol statusphere sample app.

It differs from indigo-based ATProtocol applications in several ways:

  • Authentication is handled by the IO proxy. This moves all OAuth signin-handling, request signing, retry, and request routing out of the app, greatly simplifying the xrpc client.
  • Instead of consuming the firehose, the app uses Jetstream to watch for new updates. This dramatically reduces bandwidth requirements and eliminates the need for CBOR and ugly circular dependencies in Lexicon code generation.
  • The generated lexicon code is produced by lexgenlite, a stripped-down version of the indigo lexgen tool that removes all CBOR overhead and replaces the hard-coded dependency on a concrete xrpc client with an xrpc interface, allowing multiple clients to be easily used with the generated lexicon code.
  • Two small xrpc clients are included: one that makes unauthenticated (aka "anonymous") requests to Bluesky servers and one that makes authenticated requests through IO.

About

The ATProtocol Statusphere demo application on IO.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published