<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>JRankinTech Blog</title><description>Projects, tools, and writing by JRankinTech.</description><link>https://jrankintech.com/</link><item><title>Pushed ≠ Deployed: Retiring My Homelab Web Server (Part 1)</title><link>https://jrankintech.com/blog/pushed-deployed-retiring-my-homelab-web-server-part-1/</link><guid isPermaLink="true">https://jrankintech.com/blog/pushed-deployed-retiring-my-homelab-web-server-part-1/</guid><description>the migration of a personal site from a custom Python web server hosted on home hardware to an edge-deployed architecture using Astro, Cloudflare Workers, and Keystatic. It breaks down the shift away from manual deployment routines and home server maintenance toward an automated, Git-backed publishing workflow across separated staging and production environments</description><pubDate>Tue, 10 Nov 2026 00:00:00 GMT</pubDate></item><item><title>Building OmniProfile: How I Built a Zero-Knowledge Link-in-Bio Platform from Scratch</title><link>https://jrankintech.com/blog/building-omniprofile-how-i-built-a-zero-knowledge-link-in-bio-platform-from-scratch/</link><guid isPermaLink="true">https://jrankintech.com/blog/building-omniprofile-how-i-built-a-zero-knowledge-link-in-bio-platform-from-scratch/</guid><description>Proof of Concept business card builder.</description><pubDate>Tue, 11 Aug 2026 00:00:00 GMT</pubDate></item><item><title>The Great Facelift: When Code is Perfect but the Canvas says otherwise.</title><link>https://jrankintech.com/blog/the-great-facelift-when-code-is-perfect-but-the-canvas-says-otherwise/</link><guid isPermaLink="true">https://jrankintech.com/blog/the-great-facelift-when-code-is-perfect-but-the-canvas-says-otherwise/</guid><description>So there I was, staring at a screen until the pixels start to blur, convinced that a single rogue semicolon is out to ruin My life.</description><pubDate>Tue, 21 Apr 2026 00:00:00 GMT</pubDate></item><item><title>From Localhost to the Cloud: How I Hosted My Python Server Using Cloudflare</title><link>https://jrankintech.com/blog/from-localhost-to-the-cloud-how-i-hosted-my-python-server-using-cloudflare/</link><guid isPermaLink="true">https://jrankintech.com/blog/from-localhost-to-the-cloud-how-i-hosted-my-python-server-using-cloudflare/</guid><description>We’ve all been there: you build something cool on your local machine, and suddenly the &quot;it works on my machine&quot; high wears off because you realize nobody else can see it.</description><pubDate>Mon, 20 Apr 2026 00:00:00 GMT</pubDate></item><item><title>Welcome to my Homelab</title><link>https://jrankintech.com/blog/welcome-post/</link><guid isPermaLink="true">https://jrankintech.com/blog/welcome-post/</guid><description>This is the beginning of my learning journey!</description><pubDate>Sun, 19 Apr 2026 00:00:00 GMT</pubDate></item></channel></rss>