Reyoy

Guide · Bluesky

Bluesky post to video

Paste a bsky.app post link and get a clean MP4 of the post typing itself out, laid out the way Bluesky shows it.

  • Reads public posts through Bluesky's open AppView API
  • Avatar, display name, handle, likes and replies
  • Name, handle and time on one line, as in the app
  • No Bluesky account and no app password needed

The example above was made in Reyoy, exported at 9:16 and 4.9 seconds long. It was typed by hand, so it carries the Recreated label. A post loaded from a real link renders without it.

How to do it

  1. 1

    Copy the post link

    In Bluesky, use the share menu to copy the link. It looks like bsky.app/profile/name.bsky.social/post/abc123. A raw at:// record URI works too.

  2. 2

    Fetch it on the Bluesky page

    Reyoy reads the public post and fills the card in.

  3. 3

    Style it

    Pick a format, a background and the card theme, then set the typing speed and the hold.

  4. 4

    Download

    Export the MP4 in your browser.

Built like a Bluesky post

Bluesky puts the display name, the handle and the time on one line at the same size, separated only by weight and colour, with a single dot before the time. Reyoy draws it the same way, with Bluesky's own icons for replies, reposts and likes.

Custom domain handles, like the demo.reyoy.com handle in the example, show exactly as they do in the app.

Taking a post to other apps

The 9:16 export is sized for Reels, Shorts and TikTok. The 16:9 one suits YouTube or a slide deck, and 1:1 suits a feed.

Private and deleted posts

Only public posts can be read. For anything else, type the post into "Write it yourself", and it will carry a small Recreated label.

Ready? Open the Bluesky tool with this example loaded, or read the other guides.

Questions

Do I need to log in to Bluesky?

No. The public AppView API needs no key and no account.

Are images included?

No. Reyoy draws the text of the post, not its attachments.

Which browsers can export?

Chrome or Edge on desktop, because export uses the WebCodecs encoder.