A simple Bluesky embed fixer for Telegram and Discord, written in Go
Add an x before bsky.app, so it becomes xbsky.app
Add raw before xbsky.app, so it becomes raw.xbsky.app
Add mosaic before xbsky.app, so it becomes mosaic.xbsky.app
Add /photo/(desired image number) after the record key, so it becomes xbsky.app/profile/handle.bsky.social/post/recordkey/photo/(desired image number)
ie: xbsky.app/profile/handle.bsky.social/post/recordkey/photo/1 to select the first image
Use api.xbsky.app to get a parsed struct (parsedData field) about the post's information, as well as the original struct (originalData field) that was used to create the parsed struct.
Responses will have a Content-Type: application/json, and 200 OK status code on success
A text only post
A text only post, it also works with a spoiler tag
A text only, reply post. It embeds the parent's image
A text only, reply post. It embeds the parent's video (text is cut off due to Discord limits, and replaced with ...)
A text only post that has an external embed (in this case, a link to Twitch), it embeds external metadata (title, description, image if available)
A profile embed
A profile embed, it also works with a spoiler tag
A text only post with an external embed (Telegram)
A text only, quote post (Telegram)
A reply post with two images, horizontally stacked for the image preview (Telegram only; all images are available in Instant View)
A video post (Telegram)
- This project was done as practice, if you encounter any bugs, errors, or whatnot, feel free to reach out to me:
- On Discord (@reallycoldunwanted)
- On Bluesky (@coldunwanted.net)
- Or, of course, here on GitHub