<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" href="/css/simple-atom.xslt"?>
<feed xmlns="http://www.w3.org/2005/Atom">

  <title>Death.au's Domain posts tagged Website</title>
  <subtitle>Thoughts, stories and ideas.</subtitle>
  <link rel="self" href="https://www.death.id.au/tag/website/atom.xml" type="application/atom+xml" />
  <updated>2026-08-17T21:00:10Z</updated>
  <author>
    <name>Death.au</name>
  </author>
  
  <id>https://www.death.id.au/tag/website/</id>

  
  <entry>
    <title>My new website (again)  - 11ty+Friendica</title>
    <id>https://www.death.id.au/b4.0017/</id>
    <updated>2025-09-22T00:33:00Z</updated>
    <published>2025-09-22T00:33:00Z</published>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><h1>My new website (again) - 11ty+Friendica</h1>
<p>So, I've re-jiggered my website <em>again</em>, and moved away from Ghost, back to 11ty. As I mused in a <a href="/B4.0016">previous blog post</a>, I wanted a simpler ActivityPub id, and more control over the handle (i.e. the ability to use <code>death.au</code> as the preferred username). I already had that in a self-hosted Friendica instance, but if I moved that to my main domain, that would prevent my website from showing up at the main domain. Well, with a little help from Cloudflare, I've managed to work around that.</p>
<p>I wanted to write about what I've set up here. I'll start with the basic part:</p>
<h2>Eleventy static website</h2>
<p>I've used 11ty in the past, and I really like the flexibility it gives me in the output. I can keep my pages and articles as simple markdown, or go for an all out html bonanza and 11ty will assemble the pieces and spit out html files (or other kinds of files) for me, so I end up with a collection of files that can just be served on the web in the most basic of manners.</p>
<p>Also, it allows me to set up page metadata for routing. I've got a URL scheme of my own I'm using, very loosely inspired by Johnny Decimal, whereby all my blog posts are at <code>/b4.xxxx</code> (where <code>xxxx</code> is just an incremental id). I've also got some small portfolio pages (that I still want to expand on) under <code>cv.yy</code> and short-form microblog-style posts under <code>/n.zzzzzzzz</code>(where <code>zzzzzzzz</code> is actually a base 36 encoded timestamp). Alongside some other things like a summary and featured images (if applicable) I have a lot of control, with very little markup.</p>
<p>Setting up hosting for the pages is simple on Cloudflare. I set up a pages project pointing at my 11ty repo, tell it what command to use to build and what folder the resulting files will be in to upload and now every time I commit and push, my website is automatically built and published. I'm already using Cloudflare's DNS, so it's trivial to point <a href="https://www.death.id.au">https://www.death.id.au</a> to this pages project and my website is good to go.</p>
<h2>Friendica for the Fediverse</h2>
<p>As stated above, I was already hosting a Friendica instance as my primary window into the Fediverse. I have it set up in a docker container (via docker compose) on a webserver I'm paying for, behind a reverse proxy. With that all set up it was surprisingly easy to add a route for the reverse proxy to serve up Friendica on <a href="https://death.id.au">https://death.id.au</a>. To reconfigure Friendica itself for the new domain, there's just a command that needs to be run in a console to update the database and send information out about the new domain. And because I'm still hosting it on the old domain as well, I shouldn't be losing anything coming in, even if my followers' details don't get updated right away.</p>
<p>Friendica is an amazing piece of software. Not only does it federate with other ActivityPub services like Mastodon, it also supports &quot;Groups&quot; to follow Lemmy boards, there's a plugin for BlueSky, it supports OStatus and diaspora (not that I follow anyone on those protocols at the moment), it even supports following basic RSS feeds; all in the same interface. On top of all that, it even has Mastodon-compatible API endpoints, meaning I can use most Mastodon apps/clients to interface with it, including my favourite app, Fedilab.</p>
<p>I have my instance set up as a single-user instance, which basically just means that the home page redirects to my Friendica profile page, rather than login/sign up. But that's not really want I wanted for my root domain name. I wanted it to point to my website. So how can I get Friendica to work with my static website? I don't think I can. But I <em>can</em> work around it...</p>
<h2>Cloudflare workers to serve them both</h2>
<p>So, as outlined above, I have my static website set up at <a href="https://www.death.id.au">https://www.death.id.au</a>, and my Friendica instance set up at <a href="https://death.id.au">https://death.id.au</a>. Cloudflare is already hosting my static website for free, and I can also set up &quot;workers&quot; for free as well. Workers is, in Cloudflare's own words, &quot;A serverless platform for building, deploying, and scaling apps across Cloudflare's global network...&quot;.</p>
<p>The upshot is, I have set up a worker that intercepts all requests to <a href="https://death.id.au">https://death.id.au</a>. I've got some basic javascript code to check against a list of regular expressions for the paths I've used in my static website and if it matches one of them, return the data from <a href="https://www.death.id.au">https://www.death.id.au</a> instead. This has potential to lead to conflicts; if a URL on my static website matches one on Friendica, it's going to prioritise my static site instead. But my site's pretty basic, I think it should be fine.</p>
<p>And now, like magic, <a href="https://death.id.au/">https://death.id.au/</a> will serve up my static website, <a href="https://death.id.au/now/">https://death.id.au/now/</a> should serve my now page, etc. etc. Meanwhile, <a href="https://death.id.au/profile/death.au">https://death.id.au/profile/death.au</a> will serve up my profile page on Friendica and, most importantly, any and all ActivityPub, webfinger, API calls, etc will be served on Friendica and my social handle of <code>@death.au@death.id.au</code> is all working fine. The best of both worlds!</p>
<h2>Omg.lol  - How does this fit in?</h2>
<p>A previous version of my website was built on the omg.lol platform. That place is great, and I plan to use it well into the future. But for me to have the control I wanted over this setup, I had to abandon weblog.lol, the blogging service provided by omg.lol. However, I am still heavily utilizing other aspects of the service. I've decided that most, if not all, of the images I'm using on my website are hosted at some.pics. I have plans and ideas to perhaps integrate the omg.lol provided profile and now pages into my website. They are, after all, managed by markdown. I just have to figure out how to trigger the data to be dumped into my github repository when the data changes.</p>
<p>But the biggest part I'm using at the moment is status.lol for microblogging. It's just simple and fun. You write a message (less than 500 characters), choose an emoji to display alongside it, and send it out. There's no likes or anything on the platform, but there is a checkbox to also post the status to Mastodon. As Friendica has Mastodon-compatible APIs, this works on Friendica, too. Status.lol also supports webhooks, meaning whenever I post a status, I can get this sent to an arbitrary URL.</p>
<p>So, I set up another Cloudflare Worker to accept the data from status.lol, format an appropriate markdown file and push that into my repository. That triggers a new build of the website and within seconds, that status is also visible on my website!</p>
<h2>The future</h2>
<p>I am very happy with how all this turned out. There's nothing I love more than tinkering, and the nature of this setup allows me endless possibilities for tinkering. I have Fediverse &quot;integration&quot; via some javascript I wrote which fetches interaction data on articles and posts from Friendica, and allows someone to &quot;log in&quot; with their ActivityPub handle, and if the script can obtain a valid sharing URL, provides the ability to link directly to posts and statuses on your own instance for replying, liking, boosting, etc. As mentioned earlier, I also want to integrate omg.lol's profile and now page functionality to make it easy to modify those pages through either omg.lol or my <a href="https://neighbourhood.omg.lol">neighbourhood.omg.lol</a> app without having to manually check out and push a git repository.</p>
<p>I probably want to look into a headless CMS in the future, but I can also manage my blog posts and pages through Obsidian, as they're all basically in Markdown anyway. I set up a synced vault in my content folder, so I can edit blog posts and pages in Obsidian, on my mobile or anywhere, and then when I'm back at my computer I can review, update some metadata and then push the markdown into my git repository to be published on my website.</p>
<p>Most importantly, I think this setup is pretty stable, and most importantly, fun to tinker with. My biggest hurdle is actually just thinking up things to write about in the first place 😅</p>
</div></content>
    <link rel="alternate" href="https://www.death.id.au/b4.0017/" />
    <summary type="html">So, I&#39;ve re-jiggered my website *again*, and moved away from Ghost, back to 11ty, with a Friendica instance along for the ride...</summary>
  </entry>
  
  <entry>
    <title>What I Want From the Fediverse</title>
    <id>https://www.death.id.au/b4.0016/</id>
    <updated>2025-08-27T07:08:09Z</updated>
    <published>2025-08-27T07:08:09Z</published>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><h1>What I Want From the Fediverse</h1>
<p>Was going to Ghost the right choice for me?</p>
<p>I thought it was a good move. My website, blog, and Fediverse presence are all on the same platform and all on the same domain. But it's not quite what I wanted...</p>
<p>For starters, my fediverse &quot;handle&quot; is <code>@death_au@death.id.au</code>. I want to use <code>.au</code> instead of <code>_au</code>, but Ghost won't let me. Secondly, (and I know this is not important in the slightest, but it matters to me for some reason), my actual ActivityPub ID is <code>https://death.id.au/.ghost/activitypub/users/index</code> which seems pretty cumbersome when it could be my ideal of <code>https://death.id.au</code>, or at least more like <code>https://death.id.au/profile/death.au</code>...</p>
<p>Another thing that's bothering me is having to use the Ghost admin interface to look at my feed of people I'm following. I liked the experience of using the Fedilab app connected to my Friendica instance. But that's because Fedilab uses the Mastodon APIs, which Friendica also implements for compatibility's sake.</p>
<p>It all seems so... messy.</p>
<p>What seems like an obvious thing to me, but doesn't seem to exist for a wide variety of technical reasons, is a personal, single-user ActivityPub server. Connected to that server, a variety of &quot;clients&quot; doing things in different ways. For example, my website could pull objects (i.e. Notes, Articles... even pictures or videos, maybe?) directly from my ActivityPub outbox and display them. I've toyed with the idea of using a static site generator like Eleventy to pull and format the data into HTML files. I could also have a separate web interface to interact with the Fediverse, i.e. to do the actual posting.</p>
<p>It could even be multiple clients! Imagine having something like the Ghost back-end for posting articles, separate from a YouTube/PeerTube-like back-end for posting videos, separate again from a feed reader that allows me to like/comment/subscribe to posts of people I'm following on Mastodon or Ghost or any other Fediverse platform. I could even set up a Mastodon API client layer so that Fedilab (or other Mastodon apps) could connect to the very same ActivityPub server as the rest of it. All posts would be from the same handle/ID. All activities from people I follow would end up in the same inbox.</p>
<p>But that's a dream at this stage. What can I achieve right now? Is there a way to install Friendica — with its wide compatibility — at my root domain, while still serving up a static website at that very same domain? It's something that seems like it should be possible with the right redirects and DNS rules, but it's something I haven't been able to crack yet...</p>
</div></content>
    <link rel="alternate" href="https://www.death.id.au/b4.0016/" />
    <summary type="html">Was going to Ghost the right choice for me? I thought it was a good move. My website, blog, and Fediverse presence are all on the same platform and all on the same domain. But it&#39;s not quite what I wanted...</summary>
  </entry>

</feed>