react-bluesky-card and react-threads-card are components that help React developers display social media posts in their projects.
The cards allow for much more developer freedom than embed cards provided by Threads and Bluesky.
These components provide light and dark themes out of the box, and can be used to further style with all tools that are commonly used for styling purposes by React developers. They can even detect the color scheme preference of the user's device and set the theme accordingly. They're also more responsive than the official embed cards and can have their CSS extensively customized.
The cards can display everything that Bluesky and Threads can: images, replies, likes, reposts, links, hastags, mentions, verified accounts.
Developers using these components also get full freedom over the text displayed in the component (instead of relying on the Bluesky or Threads API).
While this means that you have to manually (or programatically) provide the content of posts, it also means that you can use it to display posts that don't exist anymore, never existed, or are not public anymore.
This project originally started as react-tweet-card, as I used to be a big Twitter person back when it was officially called that. Given its recent history, I have chosen to pivot to these cards instead.