Public
Edited
Dec 20, 2023
Insert cell
Insert cell
Insert cell
Insert cell
didDoc = {
if (!handle) return;
// TODO: ideally we would resolve the handle directly using @atproto/identity, instead of using a (centralized) API service, but that package doesn't work from "web" right now
const gateway = new atproto.api.BskyAgent({service: `https://bsky.social`});
const res = await gateway.com.atproto.repo.describeRepo({repo: handle});
return res.data.didDoc;
}
Insert cell
client = {
if (!didDoc) return;

// HACK: there might be multiple service endpoints, should filter
const c = new atproto.api.BskyAgent({service: didDoc.service[0].serviceEndpoint});
return c;
}
Insert cell
Insert cell
Insert cell

Purpose-built for displays of data

Observable is your go-to platform for exploring data and creating expressive data visualizations. Use reactive JavaScript notebooks for prototyping and a collaborative canvas for visual data exploration and dashboard creation.
Learn more