Bluesky just released some very nice custom link cards that work with standard.site links.
v1.122 is rolling out today, featuring a better way to discover and share articles, blog posts and newsletters across the Atmosphere via new, dynamic Standard.site link cards. ๐งต
— Bluesky (@bsky.app) May 29, 2026 at 4:09 AM
[image or embed]
I saw them and instantly thought: WANT. NEED.
The only issue is I blog manually on Neocities rather than using one of the ATproto blogging services. But, if you like these link cards, I've discovered it is possible to add the required elements into your html files on a basic Neocities site!
Here I present a step-by-step guide. It is easier than it sounds, but will require an extra step every time you publish a new page (which for me is part of the fun). If you're interested, read on!
You only need to do this once for your whole site.
Go to pdsls.dev and log in with your Bluesky handle.
Click Create Record. In the Collection field at the top, type:
site.standard.publication
Then replace everything in the editor with this, filling in your own details:
{
"$type": "site.standard.publication",
"url": "https://yoursite.neocities.org",
"name": "Your Site Name",
"description": "A short description of your site",
"preferences": {
"showInDiscover": true
}
}
Click Create. Copy the AT-URI that appears โ it looks like:
at://did:plc:abc123.../site.standard.publication/xyz789
Save this somewhere safe โ you'll need it for every new page.
(edit 1/6/2026): Optional but recommended: You may want your own icon to appear here. We need to create a "blob" first. Here's one way to do it:
app.bsky.feed.post records and find the post you just made.image array. Go into the editor and copy this part:
"image": {
"ref": {
"$link": "abc123..."
},
"size": 12345,
"$type": "blob",
"mimeType": "image/filetype"
},
"image" with "icon". So your whole JSON should be:
{
"$type": "site.standard.publication",
"url": "https://yoursite.neocities.org",
"icon": {
"ref": {
"$link": "abc123..."
},
"size": 12345,
"$type": "blob",
"mimeType": "image/filetype"
},
"name": "Your Site Name",
"description": "A short description of your site",
"preferences": {
"showInDiscover": true
}
}
site.standard.publication.well-knownNote: the file may prompt a download rather than displaying in the browser โ that's fine! It will still validate correctly.
Open your index.html in the Neocities editor and add this inside the <head> section, using your own publication AT-URI:
<link rel="site.standard.publication"
href="at://did:plc:abc123.../site.standard.publication/xyz789" />
Repeat these steps for each new page.
Go back to pdsls.dev, click Create Record, and set the Collection to:
site.standard.document
Replace the editor content with this:
{
"$type": "site.standard.document",
"site": "at://did:plc:abc123.../site.standard.publication/xyz789",
"title": "Your Page Title",
"path": "/your-page.html",
"description": "A short description of your page",
"publishedAt": "2026-01-01T00:00:00.000Z",
"textContent": "Paste the full plain text of your page here"
}
/posts/my-post.htmlClick Create and save the document AT-URI that appears.
Some good news: Unlike posting to Bluesky, it is possible to retroactively edit your ATProto records you posted directly from PDSls :)
Open your page in the Neocities editor and add all of this inside the <head> section:
<!-- Standard.site link tags -->
<link rel="site.standard.document"
href="at://did:plc:abc123.../site.standard.document/xyz789" />
<link rel="site.standard.publication"
href="at://did:plc:abc123.../site.standard.publication/xyz789" />
<!-- Open Graph tags -->
<meta property="og:title" content="Your Page Title" />
<meta property="og:description" content="A short description." />
<meta property="og:image" content="https://yoursite.neocities.org/image.jpg" />
<meta property="og:url" content="https://yoursite.neocities.org/your-page.html" />
Replace all placeholder values with your real AT-URIs and page details. be careful not to confuse the links for your DOCUMENT (individual page) and PUBLICATION (overall site).
Want to check everything is set up correctly?
Paste your page URL into the Standard.site Validator.
Paste your page URL into Bluesky and wait for the preview to load before hitting post.
Important: make sure your URL includes the .html extension โ e.g. https://yoursite.neocities.org/your-page.html โ otherwise the enhanced card may not appear.
I just got the lovely new @standard.site link cards working with pages made in @neocities.org! And it wasn't hard! Here is a quick guide.
— Hannah Shelley, MLIS (Metadata, Lattes & Impostor Syndrome) (@hannahshelley.site) May 31, 2026 at 2:29 PM
[image or embed]