What's up with the embeds schema? #2575
snarfed
started this conversation in
Bluesky Lexicons
Replies: 1 comment
-
Yup! It evolved over time and came out a bit janky, we'd probably design it a bit different today. I'm not sure if we will add external + media as an option. It could be a new union member, or conceivably we could do a v2 of the entire post schema to handle it more elegantly. If we did that, downstream clients and services would in theory need to support both the legacy schema and the new schema; but would only need to know how to "write" the new schema. |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Hi all! I'm currently working around a minor awkward bit in the embeds schema. The
app.bsky.embed.*
lexicons are obviously useful and great, but they're also a bit confusing. Notably, you can put both images and a quote in a post withrecordWithMedia
, but there's no correspondingexternalWithMedia
, so you can't put both images and an external link embed in the same post.Was this a deliberate design decision? Or just legacy baggage due to how
app.bsky.feed.post
originally put embeds in a union, and they grew more than expected? Seems like an embedded object with optional fields for record, image, and external embeds might work better? I'm sure evolving core lexicons like that is difficult, even if it's been done before, eg entities => facets.(
recordWithMedia
itself feels pretty awkward. It's used for quote + images, which makes sense, but also quote + external, which isn't as intuitive based on the name. Not a big deal though! I'm more interested in the lack of support for external + images.)Beta Was this translation helpful? Give feedback.
All reactions