PageSourceSearch

https://www.denisyurchak.com/blog

html denisyurchak.com collected 2026-10-07 22:24:02 UTC 29,359 bytes, 1 lines download raw bytes

1<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" href="/_next/static/media/22a5144ee8d83bca-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/7d4881bb7e1bf84d-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="stylesheet" href="/_next/static/css/40e24e279da32fe1.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-d045e26a876f309a.js"/>
1<script src="/_next/static/chunks/4bd1b696-6416ced6181421ea.js" async=""></script>
1<script src="/_next/static/chunks/517-b3acbd9534c35b8b.js" async=""></script>
1<script src="/_next/static/chunks/main-app-f716d1d8434d3035.js" async=""></script>
1<script src="/_next/static/chunks/9da6db1e-e31fcb0425004e67.js" async=""></script>
1<script src="/_next/static/chunks/app/layout-b71c26546e3c24cb.js" async=""></script>
1<script src="/_next/static/chunks/8e1d74a4-ad8f6dbb71cc9ba9.js" async=""></script>
1<script src="/_next/static/chunks/7-8637782ef6aa1d65.js" async=""></script>
1<script src="/_next/static/chunks/app/blog/page-4afe28bce1af5b3b.js" async=""></script>
1<meta name="next-size-adjust" content=""/><title>Blog — Denis Yurchak</title><meta name="description" content="Writing on running SaaS solo: engineering, AI agents, marketing and everything in between."/><meta name="author" content="Denis Yurchak"/><link rel="manifest" href="/site.webmanifest"/><meta name="keywords" content="Denis Yurchak,Software Engineer,Web Development,Engineering,Founder"/><meta name="creator" content="Denis Yurchak"/><meta name="publisher" content="Denis Yurchak"/><meta name="robots" content="index, follow"/><meta name="category" content="Technology"/><link rel="canonical" href="https://www.denisyurchak.com/blog"/><meta property="og:title" content="Blog — Denis Yurchak"/><meta property="og:description" content="Writing on running SaaS solo: engineering, AI agents, marketing and everything in between."/><meta property="og:url" content="https://www.denisyurchak.com/blog"/><meta property="og:site_name" content="Denis Yurchak"/><meta property="og:locale" content="en_US"/><meta property="og:image" content="https://www.denisyurchak.com/opengraph.jpg"/><meta property="og:image:width" content="1200"/><meta property="og:image:height" content="630"/><meta property="og:image:alt" content="Blog — Denis Yurchak"/><meta property="og:type" content="website"/><meta name="twitter:card" content="summary_large_image"/><meta name="twitter:site" content="@deniurchak"/><meta name="twitter:creator" content="@deniurchak"/><meta name="twitter:title" content="Blog — Denis Yurchak"/><meta name="twitter:description" content="Writing on running SaaS solo: engineering, AI agents, marketing and everything in between."/><meta name="twitter:image" content="https://www.denisyurchak.com/opengraph.jpg"/><meta name="twitter:image:width" content="1200"/><meta name="twitter:image:height" content="630"/><meta name="twitter:image:alt" content="Blog — Denis Yurchak"/><link rel="shortcut icon" href="/favicon.ico"/><link rel="icon" href="/favicon.ico" type="image/x-icon" sizes="32x32"/><link rel="icon" href="/favicon-32x32.png" sizes="32x32" type="image/png"/><link rel="icon" href="/android-chrome-192x192.png" sizes="192x192" type="image/png"/><link rel="icon" href="/android-chrome-512x512.png" sizes="512x512" type="image/png"/><link rel="apple-touch-icon" href="/apple-touch-icon.png"/>
1<script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script>
1</head><body class="__variable_246ccd __variable_c29908 antialiased cursor-default"><div class="min-h-screen bg-background text-foreground transition-colors duration-300"><nav class="fixed top-0 left-0 right-0 z-50 transition-all duration-300 bg-transparent"><div class="max-w-4xl mx-auto px-6"><div class="flex items-center gap-6 h-20 justify-between"><a class="inline-flex items-center gap-2 whitespace-nowrap text-muted-foreground hover:text-foreground transition-colors font-medium" href="/"><svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 448 512" height="13" width="13" xmlns="http://www.w3.org/2000/svg"><path d="M257.5 445.1l-22.2 22.2c-9.4 9.4-24.6 9.4-33.9 0L7 273c-9.4-9.4-9.4-24.6 0-33.9L201.4 44.7c9.4-9.4 24.6-9.4 33.9 0l22.2 22.2c9.5 9.5 9.3 25-.4 34.3L136.6 216H424c13.3 0 24 10.7 24 24v32c0 13.3-10.7 24-24 24H136.6l120.5 114.8c9.8 9.3 10 24.8.4 34.3z"></path></svg>Back home</a><div class="hidden md:flex flex-wrap justify-end items-center gap-x-5 gap-y-1"><a href="/#about" class="text-foreground hover:text-accent transition-colors duration-200 font-medium">About</a><a href="/#projects" class="text-foreground hover:text-accent transition-colors duration-200 font-medium">Products</a><a href="/#media" class="text-foreground hover:text-accent transition-colors duration-200 font-medium">Media</a><a href="/blog" class="text-foreground hover:text-accent transition-colors duration-200 font-medium">Blog</a><a href="/consulting" class="text-foreground hover:text-accent transition-colors duration-200 font-medium">Consulting</a><div class="p-2 rounded-lg bg-muted/50 border border-border"><div class="w-5 h-5"></div></div></div><div class="flex md:hidden items-center gap-4"><div class="p-2 rounded-lg bg-muted/50 border border-border"><div class="w-5 h-5"></div></div><button class="p-2 text-foreground hover:text-accent transition-colors" aria-label="Toggle mobile menu"><svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 448 512" height="20" width="20" xmlns="http://www.w3.org/2000/svg"><path d="M16 132h416c8.837 0 16-7.163 16-16V76c0-8.837-7.163-16-16-16H16C7.163 60 0 67.163 0 76v40c0 8.837 7.163 16 16 16zm0 160h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16zm0 160h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16z"></path></svg></button></div></div><div class="md:hidden absolute top-full left-0 right-0 z-[100] bg-background border-b border-border shadow-2xl overflow-y-auto transition-all duration-300 ease-in-out max-h-0 opacity-0 border-b-0"><div class="px-6 py-4 space-y-4 text-right"><a href="/#about" class="block text-foreground hover:text-accent transition-colors duration-200 font-medium py-2">About</a><a href="/#projects" class="block text-foreground hover:text-accent transition-colors duration-200 font-medium py-2">Products</a><a href="/#media" class="block text-foreground hover:text-accent transition-colors duration-200 font-medium py-2">Media</a><a href="/blog" class="block text-foreground hover:text-accent transition-colors duration-200 font-medium py-2">Blog</a><a href="/consulting" class="block text-foreground hover:text-accent transition-colors duration-200 font-medium py-2">Consulting</a></div></div></div></nav><main class="relative"><div class="max-w-3xl mx-auto px-6 pt-28 pb-16"><h1 class="text-4xl font-bold text-foreground mb-4">Blog</h1><p class="text-lg text-muted-foreground max-w-2xl mb-12">Writing on running SaaS solo: engineering, AI agents, marketing and everything in between.</p><div class="space-y-6"><a class="group block bg-muted/50 backdrop-blur-sm rounded-2xl p-6 border border-border hover:border-accent transition-colors" href="/claude-on-vps-setup"><div class="text-sm text-muted-foreground mb-2">September 11, 2026</div><h2 class="text-xl font-semibold text-foreground mb-2 group-hover:text-accent transition-colors">I set up Claude on its own server, now I run my companies from my phone. Here is how I did it</h2><p class="text-muted-foreground mb-4">The full write-up of my setup: Claude Code on a $12/month Linux server and a Telegram bot I call R2. It writes code, reads databases, and sends my email. Why it beats a Mac mini or a cloud agent, and how to build your own.</p><span class="inline-flex items-center gap-2 font-medium text-accent">Read article<svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 448 512" class="transition-transform group-hover:translate-x-1" height="12" width="12" xmlns="http://www.w3.org/2000/svg"><path d="M190.5 66.9l22.2-22.2c9.4-9.4 24.6-9.4 33.9 0L441 239c9.4 9.4 9.4 24.6 0 33.9L246.6 467.3c-9.4 9.4-24.6 9.4-33.9 0l-22.2-22.2c-9.5-9.5-9.3-25 .4-34.3L311.4 296H24c-13.3 0-24-10.7-24-24v-32c0-13.3 10.7-24 24-24h287.4L190.9 101.2c-9.8-9.3-10-24.8-.4-34.3z"></path></svg></span></a></div></div></main><footer class="py-16 px-6 border-t border-border"><div class="max-w-4xl mx-auto flex flex-col items-center gap-10 text-center"><div class="flex flex-wrap items-center justify-center gap-3"><a href="https://www.linkedin.com/in/denisyurchak/" target="_blank" rel="noopener noreferrer" aria-label="LinkedIn" class="w-10 h-10 rounded-full bg-muted flex items-center justify-center text-muted-foreground hover:text-foreground hover:bg-muted/70 transition-colors"><svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 448 512" height="18" width="18" xmlns="http://www.w3.org/2000/svg"><path d="M416 32H31.9C14.3 32 0 46.5 0 64.3v383.4C0 465.5 14.3 480 31.9 480H416c17.6 0 32-14.5 32-32.3V64.3c0-17.8-14.4-32.3-32-32.3zM135.4 416H69V202.2h66.5V416zm-33.2-243c-21.3 0-38.5-17.3-38.5-38.5S80.9 96 102.2 96c21.2 0 38.5 17.3 38.5 38.5 0 21.3-17.2 38.5-38.5 38.5zm282.1 243h-66.4V312c0-24.8-.5-56.7-34.5-56.7-34.6 0-39.9 27-39.9 54.9V416h-66.4V202.2h63.7v29.2h.9c8.9-16.8 30.6-34.5 62.9-34.5 67.2 0 79.7 44.3 79.7 101.9V416z"></path></svg></a><a href="https://x.com/denisyurchak" target="_blank" rel="noopener noreferrer" class="flex items-center gap-2.5 px-5 py-2.5 border border-border rounded-md text-foreground hover:bg-muted/50 transition-colors"><svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 512 512" height="18" width="18" xmlns="http://www.w3.org/2000/svg"><path d="M389.2 48h70.6L305.6 224.2 487 464H345L233.7 318.6 106.5 464H35.8L200.7 275.5 26.8 48H172.4L272.9 180.9 389.2 48zM364.4 421.8h39.1L151.1 88h-42L364.4 421.8z"></path></svg><span class="text-lg">denisyurchak</span></a><a href="https://github.com/deniurchak" target="_blank" rel="noopener noreferrer" class="flex items-center gap-2.5 px-5 py-2.5 border border-border rounded-md text-foreground hover:bg-muted/50 transition-colors"><svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 496 512" height="18" width="18" xmlns="http://www.w3.org/2000/svg"><path d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"></path></svg><span class="text-lg">deniurchak</span></a><a class="flex items-center gap-2.5 px-5 py-2.5 border border-border rounded-md text-foreground hover:bg-muted/50 transition-colors" href="/contact"><svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 512 512" height="18" width="18" xmlns="http://www.w3.org/2000/svg"><path d="M64 112c-8.8 0-16 7.2-16 16l0 22.1L220.5 291.7c20.7 17 50.4 17 71.1 0L464 150.1l0-22.1c0-8.8-7.2-16-16-16L64 112zM48 212.2L48 384c0 8.8 7.2 16 16 16l384 0c8.8 0 16-7.2 16-16l0-171.8L322 328.8c-38.4 31.5-93.7 31.5-132 0L48 212.2zM0 128C0 92.7 28.7 64 64 64l384 0c35.3 0 64 28.7 64 64l0 256c0 35.3-28.7 64-64 64L64 448c-35.3 0-64-28.7-64-64L0 128z"></path></svg><span class="text-lg">email me</span></a></div><a class="group text-lg md:text-xl text-muted-foreground hover:text-foreground transition-colors" href="/consulting"><span class="relative">I offer consulting<span class="absolute left-0 right-0 -bottom-1 h-1.5 bg-purple-200 group-hover:bg-purple-300 dark:bg-purple-400/30 dark:group-hover:bg-purple-400/50 transition-colors" aria-hidden="true"></span></span></a></div></footer></div>
1<script src="/_next/static/chunks/webpack-d045e26a876f309a.js" async=""></script>
1<script>(self.__next_f=self.__next_f||[]).push([0])</script>
1<script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[45967,[\"229\",\"static/chunks/9da6db1e-e31fcb0425004e67.js\",\"177\",\"static/chunks/app/layout-b71c26546e3c24cb.js\"],\"Analytics\"]\n3:I[75704,[\"229\",\"static/chunks/9da6db1e-e31fcb0425004e67.js\",\"177\",\"static/chunks/app/layout-b71c26546e3c24cb.js\"],\"PostHogProvider\"]\n4:I[15244,[],\"\"]\n5:I[43866,[],\"\"]\n6:I[41030,[\"711\",\"static/chunks/8e1d74a4-ad8f6dbb71cc9ba9.js\",\"7\",\"static/chunks/7-8637782ef6aa1d65.js\",\"831\",\"static/chunks/app/blog/page-4afe28bce1af5b3b.js\"],\"default\"]\n7:I[48173,[\"711\",\"static/chunks/8e1d74a4-ad8f6dbb71cc9ba9.js\",\"7\",\"static/chunks/7-8637782ef6aa1d65.js\",\"831\",\"static/chunks/app/blog/page-4afe28bce1af5b3b.js\"],\"\"]\n9:I[86213,[],\"OutletBoundary\"]\nb:I[86213,[],\"MetadataBoundary\"]\nd:I[86213,[],\"ViewportBoundary\"]\nf:I[34835,[],\"\"]\n:HL[\"/_next/static/media/22a5144ee8d83bca-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/7d4881bb7e1bf84d-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/css/40e24e279da32fe1.css\",\"style\"]\n8:T518,M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-1"])</script>
1<script>self.__next_f.push([1,"0.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"])</script>
1<script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"FVCqErgyO4SXkHU_accsp\",\"p\":\"\",\"c\":[\"\",\"blog\"],\"i\":false,\"f\":[[[\"\",{\"children\":[\"blog\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],[\"\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/40e24e279da32fe1.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"children\":[[\"$\",\"$L2\",null,{}],[\"$\",\"body\",null,{\"className\":\"__variable_246ccd __variable_c29908 antialiased cursor-default\",\"children\":[\"$\",\"$L3\",null,{\"children\":[\"$\",\"$L4\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L5\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[],[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]}]]}]]}],{\"children\":[\"blog\",[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L4\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\",\"blog\",\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L5\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[\"__PAGE__\",[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"div\",null,{\"className\":\"min-h-screen bg-background text-foreground transition-colors duration-300\",\"children\":[[\"$\",\"$L6\",null,{}],[\"$\",\"main\",null,{\"className\":\"relative\",\"children\":[\"$\",\"div\",null,{\"className\":\"max-w-3xl mx-auto px-6 pt-28 pb-16\",\"children\":[[\"$\",\"h1\",null,{\"className\":\"text-4xl font-bold text-foreground mb-4\",\"children\":\"Blog\"}],[\"$\",\"p\",null,{\"className\":\"text-lg text-muted-foreground max-w-2xl mb-12\",\"children\":\"Writing on running SaaS solo: engineering, AI agents, marketing and everything in between.\"}],[\"$\",\"div\",null,{\"className\":\"space-y-6\",\"children\":[[\"$\",\"$L7\",\"/claude-on-vps-setup\",{\"href\":\"/claude-on-vps-setup\",\"className\":\"group block bg-muted/50 backdrop-blur-sm rounded-2xl p-6 border border-border hover:border-accent transition-colors\",\"children\":[[\"$\",\"div\",null,{\"className\":\"text-sm text-muted-foreground mb-2\",\"children\":\"September 11, 2026\"}],[\"$\",\"h2\",null,{\"className\":\"text-xl font-semibold text-foreground mb-2 group-hover:text-accent transition-colors\",\"children\":\"I set up Claude on its own server, now I run my companies from my phone. Here is how I did it\"}],[\"$\",\"p\",null,{\"className\":\"text-muted-foreground mb-4\",\"children\":\"The full write-up of my setup: Claude Code on a $12/month Linux server and a Telegram bot I call R2. It writes code, reads databases, and sends my email. Why it beats a Mac mini or a cloud agent, and how to build your own.\"}],[\"$\",\"span\",null,{\"className\":\"inline-flex items-center gap-2 font-medium text-accent\",\"children\":[\"Read article\",[\"$\",\"svg\",null,{\"stroke\":\"currentColor\",\"fill\":\"currentColor\",\"strokeWidth\":\"0\",\"viewBox\":\"0 0 448 512\",\"className\":\"transition-transform group-hover:translate-x-1\",\"children\":[\"$undefined\",[[\"$\",\"path\",\"0\",{\"d\":\"M190.5 66.9l22.2-22.2c9.4-9.4 24.6-9.4 33.9 0L441 239c9.4 9.4 9.4 24.6 0 33.9L246.6 467.3c-9.4 9.4-24.6 9.4-33.9 0l-22.2-22.2c-9.5-9.5-9.3-25 .4-34.3L311.4 296H24c-13.3 0-24-10.7-24-24v-32c0-13.3 10.7-24 24-24h287.4L190.9 101.2c-9.8-9.3-10-24.8-.4-34.3z\",\"children\":[]}]]],\"style\":{\"color\":\"$undefined\"}
1,\"height\":12,\"width\":12,\"xmlns\":\"http://www.w3.org/2000/svg\"}]]}]]}]]}]]}]}],[\"$\",\"footer\",null,{\"className\":\"py-16 px-6 border-t border-border\",\"children\":[\"$\",\"div\",null,{\"className\":\"max-w-4xl mx-auto flex flex-col items-center gap-10 text-center\",\"children\":[[\"$\",\"div\",null,{\"className\":\"flex flex-wrap items-center justify-center gap-3\",\"children\":[[\"$\",\"a\",null,{\"href\":\"https://www.linkedin.com/in/denisyurchak/\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\",\"aria-label\":\"LinkedIn\",\"className\":\"w-10 h-10 rounded-full bg-muted flex items-center justify-center text-muted-foreground hover:text-foreground hover:bg-muted/70 transition-colors\",\"children\":[\"$\",\"svg\",null,{\"stroke\":\"currentColor\",\"fill\":\"currentColor\",\"strokeWidth\":\"0\",\"viewBox\":\"0 0 448 512\",\"children\":[\"$undefined\",[[\"$\",\"path\",\"0\",{\"d\":\"M416 32H31.9C14.3 32 0 46.5 0 64.3v383.4C0 465.5 14.3 480 31.9 480H416c17.6 0 32-14.5 32-32.3V64.3c0-17.8-14.4-32.3-32-32.3zM135.4 416H69V202.2h66.5V416zm-33.2-243c-21.3 0-38.5-17.3-38.5-38.5S80.9 96 102.2 96c21.2 0 38.5 17.3 38.5 38.5 0 21.3-17.2 38.5-38.5 38.5zm282.1 243h-66.4V312c0-24.8-.5-56.7-34.5-56.7-34.6 0-39.9 27-39.9 54.9V416h-66.4V202.2h63.7v29.2h.9c8.9-16.8 30.6-34.5 62.9-34.5 67.2 0 79.7 44.3 79.7 101.9V416z\",\"children\":[]}]]],\"className\":\"$undefined\",\"style\":{\"color\":\"$undefined\"},\"height\":18,\"width\":18,\"xmlns\":\"http://www.w3.org/2000/svg\"}]}],[\"$\",\"a\",null,{\"href\":\"https://x.com/denisyurchak\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\",\"className\":\"flex items-center gap-2.5 px-5 py-2.5 border border-border rounded-md text-foreground hover:bg-muted/50 transition-colors\",\"children\":[[\"$\",\"svg\",null,{\"stroke\":\"currentColor\",\"fill\":\"currentColor\",\"strokeWidth\":\"0\",\"viewBox\":\"0 0 512 512\",\"children\":[\"$undefined\",[[\"$\",\"path\",\"0\",{\"d\":\"M389.2 48h70.6L305.6 224.2 487 464H345L233.7 318.6 106.5 464H35.8L200.7 275.5 26.8 48H172.4L272.9 180.9 389.2 48zM364.4 421.8h39.1L151.1 88h-42L364.4 421.8z\",\"children\":[]}]]],\"className\":\"$undefined\",\"style\":{\"color\":\"$undefined\"},\"height\":18,\"width\":18,\"xmlns\":\"http://www.w3.org/2000/svg\"}],[\"$\",\"span\",null,{\"className\":\"text-lg\",\"children\":\"denisyurchak\"}]]}],[\"$\",\"a\",null,{\"href\":\"https://github.com/deniurchak\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\",\"className\":\"flex items-center gap-2.5 px-5 py-2.5 border border-border rounded-md text-foreground hover:bg-muted/50 transition-colors\",\"children\":[[\"$\",\"svg\",null,{\"stroke\":\"currentColor\",\"fill\":\"currentColor\",\"strokeWidth\":\"0\",\"viewBox\":\"0 0 496 512\",\"children\":[\"$undefined\",[[\"$\",\"path\",\"0\",{\"d\":\"$8\",\"children\":[]}]]],\"className\":\"$undefined\",\"style\":{\"color\":\"$undefined\"},\"height\":18,\"width\":18,\"xmlns\":\"http://www.w3.org/2000/svg\"}],[\"$\",\"span\",null,{\"className\":\"text-lg\",\"children\":\"deniurchak\"}]]}],[\"$\",\"$L7\",null,{\"href\":\"/contact\",\"className\":\"flex items-center gap-2.5 px-5 py-2.5 border border-border rounded-md text-foreground hover:bg-muted/50 transition-colors\",\"children\":[[\"$\",\"svg\",null,{\"stroke\":\"currentColor\",\"fill\":\"currentColor\",\"strokeWidth\":\"0\",\"viewBox\":\"0 0 512 512\",\"children\":[\"$undefined\",[[\"$\",\"path\",\"0\",{\"d\":\"M64 112c-8.8 0-16 7.2-16 16l0 22.1L220.5 291.7c20.7 17 50.4 17 71.1 0L464 150.1l0-22.1c0-8.8-7.2-16-16-16L64 112zM48 212.2L48 384c0 8.8 7.2 16 16 16l384 0c8.8 0 16-7.2 16-16l0-171.8L322 328.8c-38.4 31.5-93.7 31.5-132 0L48 212.2zM0 128C0 92.7 28.7 64 64 64l384 0c35.3 0 64 28.7 64 64l0 256c0 35.3-28.7 64-64 64L64 448c-35.3 0-64-28.7-64-64L0 128z\",\"children\":[]}]]],\"className\":\"$undefined\",\"style\":{\"color\":\"$undefined\"},\"height\":18,\"width\":18,\"xmlns\":\"http://www.w3.org/2000/svg\"}],[\"$\",\"span\",null,{\"className\":\"text-lg\",\"children\":\"email me\"}]]}]]}],[\"$\",\"$L7\",null,{\"href\":\"/consulting\",\"className\":\"group text-lg md:text-xl text-muted-foreground hover:text-foreground transition-colors\",\"children\":[\"$\",\"span\",null,{\"className\":\"relative\",\"children\":[\"I offer consulting\",[\"$\",\"span\",null,{\"className\":\"absolute left-0 right-0 -bottom-1 h-1.5 bg-purple-200 group-hover:bg-purple-300 dark:bg-purple-400/30 dark:group-hover:bg-purple-400/50 transition-colors\",\"aria-hidden\":\"true\"}]]}]}]]}]}]]}],null,[\"$\",\"$L9\",null,{\"children\":\"$La\"}]]}],{}
1,null,false]},null,false]},null,false],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$1\",\"d0slm-uaHJvHEafB3efRH\",{\"children\":[[\"$\",\"$Lb\",null,{\"children\":\"$Lc\"}],[\"$\",\"$Ld\",null,{\"children\":\"$Le\"}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$f\",\"$undefined\"],\"s\":false,\"S\":true}\n"])</script>
1<script>self.__next_f.push([1,"e:[[\"$\",\"meta\",\"0\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script>
1<script>self.__next_f.push([1,"c:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"title\",\"1\",{\"children\":\"Blog — Denis Yurchak\"}],[\"$\",\"meta\",\"2\",{\"name\":\"description\",\"content\":\"Writing on running SaaS solo: engineering, AI agents, marketing and everything in between.\"}],[\"$\",\"meta\",\"3\",{\"name\":\"author\",\"content\":\"Denis Yurchak\"}],[\"$\",\"link\",\"4\",{\"rel\":\"manifest\",\"href\":\"/site.webmanifest\",\"crossOrigin\":\"$undefined\"}],[\"$\",\"meta\",\"5\",{\"name\":\"keywords\",\"content\":\"Denis Yurchak,Software Engineer,Web Development,Engineering,Founder\"}],[\"$\",\"meta\",\"6\",{\"name\":\"creator\",\"content\":\"Denis Yurchak\"}],[\"$\",\"meta\",\"7\",{\"name\":\"publisher\",\"content\":\"Denis Yurchak\"}],[\"$\",\"meta\",\"8\",{\"name\":\"robots\",\"content\":\"index, follow\"}],[\"$\",\"meta\",\"9\",{\"name\":\"category\",\"content\":\"Technology\"}],[\"$\",\"link\",\"10\",{\"rel\":\"canonical\",\"href\":\"https://www.denisyurchak.com/blog\"}],[\"$\",\"meta\",\"11\",{\"property\":\"og:title\",\"content\":\"Blog — Denis Yurchak\"}],[\"$\",\"meta\",\"12\",{\"property\":\"og:description\",\"content\":\"Writing on running SaaS solo: engineering, AI agents, marketing and everything in between.\"}],[\"$\",\"meta\",\"13\",{\"property\":\"og:url\",\"content\":\"https://www.denisyurchak.com/blog\"}],[\"$\",\"meta\",\"14\",{\"property\":\"og:site_name\",\"content\":\"Denis Yurchak\"}],[\"$\",\"meta\",\"15\",{\"property\":\"og:locale\",\"content\":\"en_US\"}],[\"$\",\"meta\",\"16\",{\"property\":\"og:image\",\"content\":\"https://www.denisyurchak.com/opengraph.jpg\"}],[\"$\",\"meta\",\"17\",{\"property\":\"og:image:width\",\"content\":\"1200\"}],[\"$\",\"meta\",\"18\",{\"property\":\"og:image:height\",\"content\":\"630\"}],[\"$\",\"meta\",\"19\",{\"property\":\"og:image:alt\",\"content\":\"Blog — Denis Yurchak\"}],[\"$\",\"meta\",\"20\",{\"property\":\"og:type\",\"content\":\"website\"}],[\"$\",\"meta\",\"21\",{\"name\":\"twitter:card\",\"content\":\"summary_large_image\"}],[\"$\",\"meta\",\"22\",{\"name\":\"twitter:site\",\"content\":\"@deniurchak\"}],[\"$\",\"meta\",\"23\",{\"name\":\"twitter:creator\",\"content\":\"@deniurchak\"}],[\"$\",\"meta\",\"24\",{\"name\":\"twitter:title\",\"content\":\"Blog — Denis Yurchak\"}],[\"$\",\"meta\",\"25\",{\"name\":\"twitter:description\",\"content\":\"Writing on running SaaS solo: engineering, AI agents, marketing and everything in between.\"}],[\"$\",\"meta\",\"26\",{\"name\":\"twitter:image\",\"content\":\"https://www.denisyurchak.com/opengraph.jpg\"}],[\"$\",\"meta\",\"27\",{\"name\":\"twitter:image:width\",\"content\":\"1200\"}],[\"$\",\"meta\",\"28\",{\"name\":\"twitter:image:height\",\"content\":\"630\"}],[\"$\",\"meta\",\"29\",{\"name\":\"twitter:image:alt\",\"content\":\"Blog — Denis Yurchak\"}],[\"$\",\"link\",\"30\",{\"rel\":\"shortcut icon\",\"href\":\"/favicon.ico\"}],[\"$\",\"link\",\"31\",{\"rel\":\"icon\",\"href\":\"/favicon.ico\",\"type\":\"image/x-icon\",\"sizes\":\"32x32\"}],[\"$\",\"link\",\"32\",{\"rel\":\"icon\",\"href\":\"/favicon-32x32.png\",\"sizes\":\"32x32\",\"type\":\"image/png\"}],[\"$\",\"link\",\"33\",{\"rel\":\"icon\",\"href\":\"/android-chrome-192x192.png\",\"sizes\":\"192x192\",\"type\":\"image/png\"}],[\"$\",\"link\",\"34\",{\"rel\":\"icon\",\"href\":\"/android-chrome-512x512.png\",\"sizes\":\"512x512\",\"type\":\"image/png\"}],[\"$\",\"link\",\"35\",{\"rel\":\"apple-touch-icon\",\"href\":\"/apple-touch-icon.png\"}]]\n"])</script>
1<script>self.__next_f.push([1,"a:null\n"])</script>
1</body></html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.