<?xml version="1.0" encoding="utf-8" standalone="yes"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml"><url><loc>https://blog.thms.uk/</loc><lastmod>2026-06-30T06:00:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/tag/forgejo/</loc><lastmod>2026-06-30T06:00:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/tag/meta/</loc><lastmod>2026-06-30T06:00:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/posts/</loc><lastmod>2026-06-30T06:00:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2026/06/self-hosted-blog-forgejo/</loc><lastmod>2026-06-30T06:00:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/tag/selfhosting/</loc><lastmod>2026-06-30T06:00:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/tags/</loc><lastmod>2026-06-30T06:00:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/tag/tools/</loc><lastmod>2026-06-30T06:00:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/tag/docker/</loc><lastmod>2026-06-18T06:00:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/tag/mastodon/</loc><lastmod>2026-06-18T06:00:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/tag/tailscale/</loc><lastmod>2026-06-18T06:00:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2026/06/docker-tailscale-exit-node/</loc><lastmod>2026-06-18T06:00:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2026/06/moving-mastodon-to-docker/</loc><lastmod>2026-06-15T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2026/06/laravel-frankenphp-dockerfile/</loc><lastmod>2026-06-11T06:30:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/tag/laravel/</loc><lastmod>2026-06-11T06:30:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/tag/php/</loc><lastmod>2026-06-11T06:30:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/tag/caddy/</loc><lastmod>2026-06-01T06:00:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/tag/cloudflare/</loc><lastmod>2026-06-01T06:00:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2026/06/oracle-caddy-tailscale-proxy/</loc><lastmod>2026-06-01T06:00:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2026/05/forgejo-cloudflare-pages/</loc><lastmod>2026-05-20T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/tag/proxmox/</loc><lastmod>2026-05-05T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2026/05/pbs-reverify/</loc><lastmod>2026-05-05T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/tag/freshrss/</loc><lastmod>2026-03-23T01:00:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2026/03/freshrss-mobile/</loc><lastmod>2026-03-23T01:00:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2026/03/mastodon-cloudflare-tunnel/</loc><lastmod>2026-03-18T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/tag/email/</loc><lastmod>2026-03-17T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2026/03/setting-up-bimi/</loc><lastmod>2026-03-17T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/tag/ai/</loc><lastmod>2026-02-27T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2026/02/serving-markdown-to-ai-agents/</loc><lastmod>2026-02-27T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2026/02/adding-plausible-to-uptime-kuma-status-page/</loc><lastmod>2026-02-16T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/tag/plausible/</loc><lastmod>2026-02-16T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2026/01/laravel-wherein/</loc><lastmod>2026-01-08T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2026/01/adding-plausible-to-mastodon/</loc><lastmod>2026-01-05T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/tag/pihole/</loc><lastmod>2025-12-16T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2025/12/pihole-for-tailnet/</loc><lastmod>2025-12-16T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2025/11/pi-hole-custom-block-page/</loc><lastmod>2025-11-17T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2025/07/fetching-replies-mastodon/</loc><lastmod>2025-07-21T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/tag/postgres/</loc><lastmod>2025-06-06T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/tag/sql/</loc><lastmod>2025-06-06T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2025/06/upgrade-postgres-15-17-mastodon/</loc><lastmod>2025-06-06T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/tag/openai/</loc><lastmod>2025-05-06T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2025/05/openai-sucks/</loc><lastmod>2025-05-06T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2025/04/prompt-for-missing-input/</loc><lastmod>2025-04-24T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2025/03/laravel-queue-nodejs/</loc><lastmod>2025-03-19T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2025/01/plausible/</loc><lastmod>2025-01-31T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2025/01/change-mastodon-referrer-policy/</loc><lastmod>2025-01-17T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2025/01/custom-carbon-formatter/</loc><lastmod>2025-01-08T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2024/12/how-to-run-wrapstodon/</loc><lastmod>2024-12-03T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/tag/fedifetcher/</loc><lastmod>2024-08-14T08:08:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2024/08/fedifetcher-step-by-step/</loc><lastmod>2024-08-14T08:08:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/tag/nginx/</loc><lastmod>2024-07-23T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2024/07/smart-routing-with-nginx/</loc><lastmod>2024-07-23T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/tag/web/</loc><lastmod>2024-07-23T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/tag/mysql/</loc><lastmod>2024-07-15T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2024/07/laravel-mysqlexplain/</loc><lastmod>2024-07-15T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2024/07/mysql-views-laravel/</loc><lastmod>2024-07-11T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/tag/axios/</loc><lastmod>2024-06-21T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/tag/node/</loc><lastmod>2024-06-21T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2024/06/node-axios-sessions/</loc><lastmod>2024-06-21T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2024/06/etsy-merchant-feeds/</loc><lastmod>2024-06-06T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2024/05/event-listeners-laravel-11/</loc><lastmod>2024-05-24T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/tag/domains/</loc><lastmod>2024-02-13T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2024/02/on-the-perils-of-domains/</loc><lastmod>2024-02-13T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/tag/backblaze/</loc><lastmod>2024-01-29T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2024/01/backing-up-nextcloud/</loc><lastmod>2024-01-29T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/tag/nextcloud/</loc><lastmod>2024-01-29T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2024/01/moving-to-nextcloud/</loc><lastmod>2024-01-22T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2024/01/pg-repack-mastodon/</loc><lastmod>2024-01-04T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2023/10/splitting-out-microservices/</loc><lastmod>2023-10-24T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2023/09/mastodon-elasticsearch/</loc><lastmod>2023-09-26T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2023/07/tweaking-postgres-mastodon/</loc><lastmod>2023-07-26T07:03:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2023/06/using-cloudflare-with-a-raspberry-pi-for-dynamic-dns/</loc><lastmod>2023-06-08T08:03:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2023/05/use-cloudflare-tunnel-to-share-local-development-site/</loc><lastmod>2023-05-19T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2023/05/colour-contrast-and-accessibility/</loc><lastmod>2023-05-05T08:00:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/tag/css/</loc><lastmod>2023-05-05T08:00:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2023/04/muli-user-support-for-fedifetcher/</loc><lastmod>2023-04-11T08:00:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2023/03/fedifetcher-backfills-notifications/</loc><lastmod>2023-03-28T06:20:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2023/03/introducing-fedifetcher/</loc><lastmod>2023-03-27T06:05:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/tag/fediverse/</loc><lastmod>2023-03-27T06:05:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2023/03/blogging-with-webloglol-and-github-actions/</loc><lastmod>2023-03-20T07:20:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2023/03/backfill-recently-followed-accounts/</loc><lastmod>2023-03-13T13:16:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/tag/html/</loc><lastmod>2023-03-10T08:40:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2023/03/stop-disabling-form-submit-buttons/</loc><lastmod>2023-03-10T08:40:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/tag/ux/</loc><lastmod>2023-03-10T08:40:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2023/03/pull-missing-responses-into-mastodon/</loc><lastmod>2023-03-07T07:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2023/03/testing-email/</loc><lastmod>2023-03-03T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2023/03/spf-dkim-dmarc/</loc><lastmod>2023-03-02T07:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2023/02/applying-pull-requests-from-another-fork/</loc><lastmod>2023-02-27T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/tag/git/</loc><lastmod>2023-02-27T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2023/02/search-mastodon/</loc><lastmod>2023-02-24T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2023/02/mastodon-translation-options/</loc><lastmod>2023-02-21T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2023/02/mastodon-comments/</loc><lastmod>2023-02-15T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2023/02/openai-exceptions-composer/</loc><lastmod>2023-02-13T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2023/02/ai-powered-solutions-laravel-error-pages/</loc><lastmod>2023-02-10T06:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2023/02/mastodon-block-tags/</loc><lastmod>2023-02-08T20:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2023/02/money-in-php-laravel/</loc><lastmod>2023-02-02T07:20:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/tag/javascript/</loc><lastmod>2023-01-23T07:08:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2023/01/read-and-write-urls-in-javascript/</loc><lastmod>2023-01-23T07:08:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/tag/url/</loc><lastmod>2023-01-23T07:08:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/2023/01/setting-up-mastodon/</loc><lastmod>2023-01-12T07:15:00+00:00</lastmod></url><url><loc>https://blog.thms.uk/drafts/self-hosted-services/</loc></url><url><loc>https://blog.thms.uk/drafts/</loc></url><url><loc>https://blog.thms.uk/fedifetcher/</loc></url><url><loc>https://blog.thms.uk/recet/</loc></url><url><loc>https://blog.thms.uk/secrets/</loc></url></urlset>