Bluesky for Comments on Ghost Blogs
My experiment to use Bluesky for blog comments, creating a simple integration that uses Ghost's code injection feature and Bluesky's public API. This is a "LowCode" approach, little to no infrastructure needed - No database, no moderation infrastructure, just threaded discussions that live on Bluesky / moderated by Bluesky.
With the distribution and popularity of Bluesky/ATproto and the community of moderation tools available, what if I merged the comments here with Bluesky? This removes another piece of maintenance on this site.
I didn't come up with this idea on my own. I was inspired by:
- Emily Liu's implementation at emilyliu.me - the initial spark
- Nishanth Ahir's Ghost integration guide at nishtahir.com - Great Ghost examples
- The broader AT Protocol community for building such an accessible API
I greatly appreciate these folks for paving the way.
How It Works
The workflow is pretty simple:
- Write and publish a blog post in Ghost
- Share the post on Bluesky with your own commentary
- Copy the Bluesky post URL
- Add a small script to your Ghost post that displays the replies
- Readers reply on Bluesky and their comments appear on your blog
The Implementation
A custom JavaScript approach using Ghost's code injection feature. This avoids infrastructure changes and keeps things within the existing Ghost framework and themes.
Gist Code
Gist - Expand me
Tradeoffs
Pro
- Theme integration: Inherits Ghost theme's colors and fonts automatically
- Zero maintenance: No database, no server-side components
- Built-in moderation: Use Bluesky's block/mute features
Con
- Comments aren't indexed by search engines (this is all JavaScript)
- Bluesky dependency
The API
The magic happens through Bluesky's public API:
- Endpoint:
https://public.api.bsky.app/xrpc/app.bsky.feed.getPostThread
- No authentication for reading public posts
- JSON with full thread structure including nested replies
Future Ideas
Some things I might add later:
- Auto-refresh comments periodically
- Author avatars from Bluesky profiles
- Better timestamp formatting
- Link detection in comment text
Long term
- Server Side Integrations - ability for Ghost to track the related Bluesky post, as well as post on my behalf
- Admin tools for easier post sharing