Index: src/routes/posts.js
===================================================================
--- src/routes/posts.js	(revision 14f54a7a8347f9521ad9b1f426f36b48b00993d6)
+++ src/routes/posts.js	(revision 72f936a2d917a1ad29abc8ab9ef11e7426f0ce45)
@@ -1070,4 +1070,8 @@
     html = html.replace(/\[\[(track|album|playlist):[^\]]+\]\]/gi, '');
   }
+  // Linkify inline #hashtags and bare URLs for on-site display — same rules as the
+  // federated copy (buildNote). Was: only the Mastodon copy got links; the website
+  // showed raw "#tag"/URL text. Idempotent, so editor links + embeds are untouched.
+  html = ActivityPubService.linkifyBody('', html);
   post.content_html = html;
 
