How to host an entire website on Bluesky

When I first joined the BlueSky social network last year, I remember being struck by the notion that I could select a custom hosting provider. I didn't fully understand what this meant, beyond the fact that it allowed me to link my account to a privately-owned domain name. This seemed like a neat idea—even though all it really allowed me to do (as far as I could tell) was to change my username so that it wasn't automatically appended by ".bsky.social.", like most default accounts on the site.

But as software engineer Daniel Mangum discovered, you can actually do a lot more with BlueSky's unique structural approach to hosting. In fact, you can even use the social media site to host an entire website through BlueSky's API.

Which is exactly what Mangum did.

To be fair, it's a pretty minimalist site. But the quality is not really the point. Mangum explains the exploitation in detail over at his blog, which essentially hinges on a distinction between "record" content and "blob" content, and which files gets hosted where:

Records are the core entity types that users create. They generally have some defined structure and metadata, and they may reference other records or content. Blobs are typically larger unstructured data, such as media assets, that may be uploaded by a user, but are exposed via a record referencing them. For example, on Bluesky a user may upload an image, then create a post that references it. From an end-user perspective, these two operations appear to be one action, but they are typically decoupled at the API level.

It's a fascinating look at web architecture (if a bit over my own head), and something that makes BlueSky really stand out. The company even confirmed to Mangum that, while the application is not intended to host websites, it is a known behavior.

This Website Is Hosted On Bluesky [David Mangum]

Previously:
Bluesky filter lists from SkySentry
Bluesky CEO taunts Musk with 'billionaire proof' design claim
The Bluesky firehose of posts visualized as a 1990s screen saver