<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Keenrig Platform — Blog</title>
    <link>https://keenrig.com/en</link>
    <description>The design decisions behind Keenrig, written in enough detail that you can argue with them.</description>
    <language>en</language>
    <atom:link href="https://keenrig.com/feed.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Self-hosting n8n: RAM, data and webhooks</title>
      <link>https://keenrig.com/en/blog/self-host-n8n-on-a-vps</link>
      <guid isPermaLink="true">https://keenrig.com/en/blog/self-host-n8n-on-a-vps</guid>
      <description>Install n8n on your own VPS with a domain, HTTPS and working webhooks. How much RAM it needs, where its data lives, and what this setup does not do.</description>
      <pubDate>Wed, 07 Oct 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Self-hosting without a public IP (behind CGNAT)</title>
      <link>https://keenrig.com/en/blog/self-hosting-behind-cgnat</link>
      <guid isPermaLink="true">https://keenrig.com/en/blog/self-hosting-behind-cgnat</guid>
      <description>A home or office server behind CGNAT cannot be reached on ports 80/443. How to tell, and the two ways out: open the ports, or go through a tunnel.</description>
      <pubDate>Wed, 07 Oct 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Self-host apps without a domain name</title>
      <link>https://keenrig.com/en/blog/self-host-without-a-domain</link>
      <guid isPermaLink="true">https://keenrig.com/en/blog/self-host-without-a-domain</guid>
      <description>No domain needed to start self-hosting with Keenrig: the admin panel runs on your server IP. Add a domain later with one record, or use a Keenrig Cloud name.</description>
      <pubDate>Wed, 07 Oct 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>A cloud disconnect switch people dare to press</title>
      <link>https://keenrig.com/en/blog/cong-tac-ngat-cloud</link>
      <guid isPermaLink="true">https://keenrig.com/en/blog/cong-tac-ngat-cloud</guid>
      <description>The right to leave only means something if it breaks nothing. This is the preflight, the honest list of what you actually lose, and how to come back.</description>
      <pubDate>Sun, 09 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Pin the digest, never the latest tag</title>
      <link>https://keenrig.com/en/blog/ghim-digest-khong-ghim-latest</link>
      <guid isPermaLink="true">https://keenrig.com/en/blog/ghim-digest-khong-ghim-latest</guid>
      <description>Every Keenrig catalog manifest pins a specific digest and is Ed25519-signed. Here is why, and why &quot;just use the latest tag&quot; is a slow-acting trap.</description>
      <pubDate>Thu, 06 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Why local is the source of truth, not the cloud</title>
      <link>https://keenrig.com/en/blog/local-la-nguon-su-that</link>
      <guid isPermaLink="true">https://keenrig.com/en/blog/local-la-nguon-su-that</guid>
      <description>Keenrig&apos;s first principle: the server holds all the state it needs to run; the cloud is an optional layer on top. What that costs, and what it buys.</description>
      <pubDate>Tue, 04 Aug 2026 00:00:00 GMT</pubDate>
    </item>
  </channel>
</rss>
