constellation · intersection

<atproto-mutuals>

Intersection of two actor sets via Constellation's many-to-many endpoint. Default: who follows BOTH a and b. Override `source` for like/repost/reply/quote intersections.

<!-- followers in common -->
<atproto-mutuals a="did:plc:..." b="did:plc:..." source="follow"></atproto-mutuals>

<!-- accounts that liked both posts -->
<atproto-mutuals a="at://.../post/x" b="at://.../post/y" source="like"></atproto-mutuals>
NameTypeDefaultDescription
a * string First subject (handle, DID, or AT-URI).
b * string Second subject — same shape as a.
source string follow Relation key from SOURCES — follow, like, repost, reply, quote.
limit number 16 Avatars per page.
constellation string Override the Constellation endpoint.

External CSS can target these via atproto-mutuals::part(<name>) { ... }.

PartWhat it is
head / grid / actor / actor-avatar / loadmore / emptySame as atproto-followers (shared actor-grid base).

Queries Constellation's getManyToMany XRPC endpoint with two subjects and a shared source:pathToOther. Returns DIDs whose records link to BOTH subjects via the named relation.

Out of the box the source defaults to follow — answering "who follows both of these people?" — but any key in the library's SOURCES table works: like, repost, reply, quote, follow.

The a and b attributes accept handle, DID, or AT-URI. Handle resolution requires the handle's domain to serve /.well-known/atproto-did with CORS open. Most *.bsky.social handles don't, and custom domains vary — if either subject 404s on well-known resolution, the whole query fails with "Failed to fetch".

For reliable demos and production, pass DIDs directly. The demo above uses DIDs for both subjects to sidestep the issue entirely.

  • Audience overlap: who follows both you and a peer? Useful for collaboration / audience analysis.
  • Content overlap: which accounts liked both a post and a related post? Proxy for topic resonance.
  • Conversation overlap: who replied to both threads?

<atproto-followers> is the single-subject version for follow relations. <atproto-backlinks> gives you the top-level "what links to this one subject" view.