<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
    <channel>
        <title>Kudakwashe Mupeni</title>
        <link>https://mupeni.dev</link>
        <description>Kudakwashe Mupeni is a software developer from Zimbabwe building backend systems, developer tools, and edge infrastructure.</description>
        <lastBuildDate>Mon, 11 May 2026 13:20:54 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>https://github.com/jpmonette/feed</generator>
        <language>en</language>
        <image>
            <title>Kudakwashe Mupeni</title>
            <url>https://mupeni.dev/favicons/android-chrome-512x512.png</url>
            <link>https://mupeni.dev</link>
        </image>
        <copyright>All rights reserved 2026, Kudakwashe Mupeni</copyright>
        <item>
            <title><![CDATA[The Deletion Test: How to Know If an Abstraction Is Earning Its Keep]]></title>
            <link>https://mupeni.dev/articles/the-deletion-test</link>
            <guid isPermaLink="false">https://mupeni.dev/articles/the-deletion-test</guid>
            <pubDate>Mon, 11 May 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[A principle for evaluating abstractions: if deleting a module scatters complexity across callers, it was concentrating something real. If complexity vanishes, it was just organizational comfort.]]></description>
            <author>kudamupeni@icloud.com (Kudakwashe Mupeni)</author>
        </item>
        <item>
            <title><![CDATA[Shrinking a Cloudflare Worker from 6 MB to 1.2 MB]]></title>
            <link>https://mupeni.dev/articles/cloudflare-workers-bundle-bloat</link>
            <guid isPermaLink="false">https://mupeni.dev/articles/cloudflare-workers-bundle-bloat</guid>
            <pubDate>Mon, 06 Apr 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[How transitive dependencies from better-auth and hono-openapi caused a Worker to exceed resource limits — and how a custom esbuild step fixed it.]]></description>
            <author>kudamupeni@icloud.com (Kudakwashe Mupeni)</author>
        </item>
        <item>
            <title><![CDATA[I Built a Healthcare App That Works Without the Internet — Part 3: The Hard Parts]]></title>
            <link>https://mupeni.dev/articles/easy-hms-hard-parts</link>
            <guid isPermaLink="false">https://mupeni.dev/articles/easy-hms-hard-parts</guid>
            <pubDate>Mon, 23 Mar 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[The security model behind Easy HMS's sync engine: two-token auth, server-side authorization that never trusts the payload, the bootstrap problem, and what I'd change.]]></description>
            <author>kudamupeni@icloud.com (Kudakwashe Mupeni)</author>
        </item>
        <item>
            <title><![CDATA[I Built a Healthcare App That Works Without the Internet — Part 2: The Sync Engine]]></title>
            <link>https://mupeni.dev/articles/easy-hms-sync</link>
            <guid isPermaLink="false">https://mupeni.dev/articles/easy-hms-sync</guid>
            <pubDate>Mon, 09 Mar 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[A deep dive into the push-pull sync protocol that keeps an offline Tauri desktop app in sync with Cloudflare D1 — queue design, conflict resolution, and the pull cursor.]]></description>
            <author>kudamupeni@icloud.com (Kudakwashe Mupeni)</author>
        </item>
        <item>
            <title><![CDATA[I Built a Healthcare App That Works Without the Internet — Part 1: The Architecture]]></title>
            <link>https://mupeni.dev/articles/easy-hms-architecture</link>
            <guid isPermaLink="false">https://mupeni.dev/articles/easy-hms-architecture</guid>
            <pubDate>Mon, 23 Feb 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[How Easy HMS is structured as a Rust monorepo with three runtimes, one set of shared business logic, and a serverless Cloudflare backend — and why those choices were made.]]></description>
            <author>kudamupeni@icloud.com (Kudakwashe Mupeni)</author>
        </item>
    </channel>
</rss>