<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Marcus Jenshaug</title>
    <link>https://marcusjenshaug.no/en</link>
    <description>Fullstack developer at Redi AS. I build web applications with Next.js, TypeScript and Supabase, and share what I learn along the way.</description>
    <language>en-US</language>
    <atom:link href="https://marcusjenshaug.no/rss.xml?lang=en" rel="self" type="application/rss+xml" />
    <item>
      <title>From Vercel to Hetzner and Coolify: why I moved back home</title>
      <link>https://marcusjenshaug.no/en/blog/from-vercel-to-hetzner-and-coolify-why-i-moved-home</link>
      <guid isPermaLink="true">https://marcusjenshaug.no/en/blog/from-vercel-to-hetzner-and-coolify-why-i-moved-home</guid>
      <pubDate>Wed, 10 Jun 2026 20:47:00 GMT</pubDate>
      <description>Vercel is lovely to get started with, but at some point I found myself paying for magic I didn&apos;t need, and for data I wanted to keep in the EU. Here&apos;s the story of how I moved Søknadsbasen to a single Hetzner server running Coolify, what was actually hard, and what I&apos;m left with.</description>
      <content:encoded><![CDATA[<p>Vercel is lovely to get started with, but at some point I found myself paying for magic I didn&apos;t need, and for data I wanted to keep in the EU. Here&apos;s the story of how I moved Søknadsbasen to a single Hetzner server running Coolify, what was actually hard, and what I&apos;m left with.</p><p><a href="https://marcusjenshaug.no/en/blog/from-vercel-to-hetzner-and-coolify-why-i-moved-home">Read the full post on marcusjenshaug.no</a></p>]]></content:encoded>
      <category>vercel</category><category>coolify</category><category>hetzner</category><category>selvhosting</category><category>docker</category><category>nextjs</category><category>devops</category><category>eu</category><category>gdpr</category>
    </item>
    <item>
      <title>When Coolify doesn&apos;t build the packages CI builds</title>
      <link>https://marcusjenshaug.no/en/blog/coolify-does-not-build-the-packages</link>
      <guid isPermaLink="true">https://marcusjenshaug.no/en/blog/coolify-does-not-build-the-packages</guid>
      <pubDate>Wed, 13 May 2026 20:53:00 GMT</pubDate>
      <description>Coolify builds a pnpm monorepo with pnpm filter, not with Turborepo. When internal packages export from dist/, the prod build falls over while CI stays green</description>
      <content:encoded><![CDATA[<p>Coolify builds a pnpm monorepo with pnpm filter, not with Turborepo. When internal packages export from dist/, the prod build falls over while CI stays green</p><p><a href="https://marcusjenshaug.no/en/blog/coolify-does-not-build-the-packages">Read the full post on marcusjenshaug.no</a></p>]]></content:encoded>
      <category>nextjs</category><category>pnpm</category><category>turborepo</category><category>monorepo</category><category>coolify</category>
    </item>
    <item>
      <title>Søknadsbasen: the tool I couldn&apos;t find, so I built it myself</title>
      <link>https://marcusjenshaug.no/en/blog/soknadsbasen-the-tool-i-couldnt-find-so-built-myself</link>
      <guid isPermaLink="true">https://marcusjenshaug.no/en/blog/soknadsbasen-the-tool-i-couldnt-find-so-built-myself</guid>
      <pubDate>Fri, 24 Apr 2026 09:39:52 GMT</pubDate>
      <description>A CV tool and job application tracker that started as frustration with existing solutions, and turned into a small product I actually use myself.</description>
      <content:encoded><![CDATA[<p>A CV tool and job application tracker that started as frustration with existing solutions, and turned into a small product I actually use myself.</p><p><a href="https://marcusjenshaug.no/en/blog/soknadsbasen-the-tool-i-couldnt-find-so-built-myself">Read the full post on marcusjenshaug.no</a></p>]]></content:encoded>
      <category>solodev</category><category>nextjs</category><category>supabase</category><category>produktutvikling</category><category>jobbsøking</category>
    </item>
    <item>
      <title>Two and a Half Years as the Only Developer</title>
      <link>https://marcusjenshaug.no/en/blog/two-and-a-half-years-as-sole-developer</link>
      <guid isPermaLink="true">https://marcusjenshaug.no/en/blog/two-and-a-half-years-as-sole-developer</guid>
      <pubDate>Mon, 20 Apr 2026 16:50:00 GMT</pubDate>
      <description>A retrospective after building Eiendomsavtaler.no from the first line of code. From contracted consultant to founding developer, through three technical generations.</description>
      <content:encoded><![CDATA[<p>A retrospective after building Eiendomsavtaler.no from the first line of code. From contracted consultant to founding developer, through three technical generations.</p><p><a href="https://marcusjenshaug.no/en/blog/two-and-a-half-years-as-sole-developer">Read the full post on marcusjenshaug.no</a></p>]]></content:encoded>
      <category>arkitektur</category><category>solo-utvikling</category><category>retrospektiv</category><category>plattform</category><category>wordpress</category><category>nextjs</category>
    </item>
    <item>
      <title>What I learned from building Klink alone</title>
      <link>https://marcusjenshaug.no/en/blog/what-i-learned-building-klink-alone</link>
      <guid isPermaLink="true">https://marcusjenshaug.no/en/blog/what-i-learned-building-klink-alone</guid>
      <pubDate>Thu, 02 Apr 2026 04:23:00 GMT</pubDate>
      <description>A drinking-game web app that was supposed to be a weekend project, and turned into a lesson in scope, architecture and actually shipping something finished.</description>
      <content:encoded><![CDATA[<p>A drinking-game web app that was supposed to be a weekend project, and turned into a lesson in scope, architecture and actually shipping something finished.</p><p><a href="https://marcusjenshaug.no/en/blog/what-i-learned-building-klink-alone">Read the full post on marcusjenshaug.no</a></p>]]></content:encoded>
      <category>nextjs</category><category>supabase</category><category>pwa</category><category>sideprosjekt</category>
    </item>
  </channel>
</rss>