<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://ryanfreeman.dev/</loc>
<lastmod>2026-04-16T00:02:03.832Z</lastmod>
</url>
<url>
<loc>https://ryanfreeman.dev/about</loc>
<lastmod>2026-04-16T00:02:03.832Z</lastmod>
</url>
<url>
<loc>https://ryanfreeman.dev/services</loc>
<lastmod>2026-04-16T00:02:03.832Z</lastmod>
</url>
<url>
<loc>https://ryanfreeman.dev/reading</loc>
<lastmod>2026-04-16T00:02:03.832Z</lastmod>
</url>
<url>
<loc>https://ryanfreeman.dev/writing</loc>
<lastmod>2026-04-16T00:02:03.832Z</lastmod>
</url>
<url>
<loc>https://ryanfreeman.dev/projects</loc>
<lastmod>2026-04-16T00:02:03.832Z</lastmod>
</url>
<url>
<loc>https://ryanfreeman.dev/writing/using-tailscale-and-subnet-routers-to-access-legacy-devices/</loc>
<lastmod>2025-06-18T00:00:00.000Z</lastmod>
</url>
<url>
<loc>https://ryanfreeman.dev/writing/cheap-vps-a-cost-effective-alternative-to-cloudflare-tunnels/</loc>
<lastmod>2025-05-10T00:00:00.000Z</lastmod>
</url>
<url>
<loc>https://ryanfreeman.dev/writing/passwordless-ssh-login-with-public-key-authentication/</loc>
<lastmod>2025-05-04T00:00:00.000Z</lastmod>
</url>
<url>
<loc>https://ryanfreeman.dev/writing/generating-dynamic-open-graph-images-with-nextjs/</loc>
<lastmod>2024-10-10T00:00:00.000Z</lastmod>
</url>
<url>
<loc>https://ryanfreeman.dev/writing/secure-your-websites-with-lets-encrypt-npm-and-cloudflare/</loc>
<lastmod>2024-09-21T00:00:00.000Z</lastmod>
</url>
<url>
<loc>https://ryanfreeman.dev/writing/using-tailscale-to-bypass-steam-families-restrictions/</loc>
<lastmod>2024-09-14T00:00:00.000Z</lastmod>
</url>
<url>
<loc>https://ryanfreeman.dev/writing/migrating-from-vercel-to-raspberry-pi-5/</loc>
<lastmod>2024-08-23T00:00:00.000Z</lastmod>
</url>
<url>
<loc>https://ryanfreeman.dev/writing/a-personal-journey-in-software-engineering/</loc>
<lastmod>2022-12-04T00:00:00.000Z</lastmod>
</url>
</urlset>
