{"@attributes":{"version":"2.0"},"channel":{"title":"Kosumi.dev","link":"https:\/\/kosumi.dev\/blog","description":"Reflections on tech, life, and finance \u2014 powered by Next.js and Tailwind CSS.","language":"en-us","managingEditor":"i@kosumi.dev (Kosumi)","webMaster":"i@kosumi.dev (Kosumi)","lastBuildDate":"Fri, 31 Oct 2025 00:00:00 GMT","item":[{"guid":"https:\/\/kosumi.dev\/blog\/best-way-to-handle-user-login","title":"The Best Way to Handle User Login","link":"https:\/\/kosumi.dev\/blog\/best-way-to-handle-user-login","description":"Exploring modern authentication strategies for public-facing apps \u2014 from passwords to passkeys, and how to unify them securely.","pubDate":"Fri, 31 Oct 2025 00:00:00 GMT","author":"i@kosumi.dev (Kosumi)","category":["authentication","security","webauthn","passkey"]},{"guid":"https:\/\/kosumi.dev\/blog\/other-blogs","title":"Other blogs I find helpful","link":"https:\/\/kosumi.dev\/blog\/other-blogs","description":"Just a list of blogs that I like. Keep updated","pubDate":"Wed, 29 Oct 2025 00:00:00 GMT","author":"i@kosumi.dev (Kosumi)","category":["tech","blog","links"]},{"guid":"https:\/\/kosumi.dev\/blog\/tailscale-k3s-troubleshooting","title":"k3s and tailscale networking problems","link":"https:\/\/kosumi.dev\/blog\/tailscale-k3s-troubleshooting","description":"coredns forward and CNI fix","pubDate":"Sun, 26 Oct 2025 00:00:00 GMT","author":"i@kosumi.dev (Kosumi)","category":["Cloud native","k8s","tailscale"]},{"guid":"https:\/\/kosumi.dev\/blog\/Building-Your-Own-Cloud-Like-Legos","title":"Building Your Own Cloud Like Legos: reclaiming control of your data, services and infrastructure","link":"https:\/\/kosumi.dev\/blog\/Building-Your-Own-Cloud-Like-Legos","description":"The 2025 AWS outage exposed how dependent we are on centralized cloud giants that profit from our data and control our digital lives through surveillance and censorship. Building your own cloud restores autonomy: connect devices with Tailscale, orchestrate apps using k3s, route traffic securely via cloudflared tunnels, and ensure reproducibility with NixOS. Like assembling Legos, you can mix local machines and cloud VMs to form a self-hosted, hybrid cloud. It\u2019s not just a technical project\u2014it\u2019s a political act of reclaiming privacy, resilience, and digital sovereignty from Big Tech\u2019s monopolized infrastructure.","pubDate":"Sat, 25 Oct 2025 00:00:00 GMT","author":"i@kosumi.dev (Kosumi)","category":["Cloud native","k8s","NixOS","tailscale","cloudflare","digital sovereignty"]},{"guid":"https:\/\/kosumi.dev\/blog\/blog-setup","title":"Setting up my second blog","link":"https:\/\/kosumi.dev\/blog\/blog-setup","description":"Some thoughts on life and frontend development","pubDate":"Fri, 24 Oct 2025 00:00:00 GMT","author":"i@kosumi.dev (Kosumi)","category":["next js","React","frontend development"]},{"guid":"https:\/\/kosumi.dev\/blog\/self-hosted-services","title":"What useful services you can self host in your k3s cluster?","link":"https:\/\/kosumi.dev\/blog\/self-hosted-services","description":"A look at practical, privacy-friendly and productive services to self-host in your lightweight Kubernetes (k3s) cluster.","pubDate":"Fri, 24 Oct 2025 00:00:00 GMT","author":"i@kosumi.dev (Kosumi)","category":["opensource","cloud","self-hosted"]},{"guid":"https:\/\/kosumi.dev\/blog\/release-of-tailwind-nextjs-starter-blog-v2.0","title":"Release of Tailwind Nextjs Starter Blog v2.0","link":"https:\/\/kosumi.dev\/blog\/release-of-tailwind-nextjs-starter-blog-v2.0","description":"Release of Tailwind Nextjs Starter Blog template v2.0, refactored with Nextjs App directory and React Server Components setup.Discover the new features and how to migrate from V1.","pubDate":"Sat, 05 Aug 2023 00:00:00 GMT","author":"i@kosumi.dev (Kosumi)","category":["next-js","tailwind","guide","feature"]},{"guid":"https:\/\/kosumi.dev\/blog\/new-features-in-v1","title":"New features in v1","link":"https:\/\/kosumi.dev\/blog\/new-features-in-v1","description":"An overview of the new features released in v1 - code block copy, multiple authors, frontmatter layout and more","pubDate":"Sat, 07 Aug 2021 15:32:14 GMT","author":"i@kosumi.dev (Kosumi)","category":["next-js","tailwind","guide"]},{"guid":"https:\/\/kosumi.dev\/blog\/nested-route\/introducing-multi-part-posts-with-nested-routing","title":"Introducing Multi-part Posts with Nested Routing","link":"https:\/\/kosumi.dev\/blog\/nested-route\/introducing-multi-part-posts-with-nested-routing","description":"The blog template supports posts in nested sub-folders. This can be used to group posts of similar content e.g. a multi-part course. This post is itself an example of a nested route!","pubDate":"Sun, 02 May 2021 00:00:00 GMT","author":"i@kosumi.dev (Kosumi)","category":["multi-author","next-js","feature"]},{"guid":"https:\/\/kosumi.dev\/blog\/introducing-tailwind-nextjs-starter-blog","title":"Introducing Tailwind Nextjs Starter Blog","link":"https:\/\/kosumi.dev\/blog\/introducing-tailwind-nextjs-starter-blog","description":"Looking for a performant, out of the box template, with all the best in web technology to support your blogging needs? Checkout the Tailwind Nextjs Starter Blog template.","pubDate":"Tue, 12 Jan 2021 00:00:00 GMT","author":"i@kosumi.dev (Kosumi)","category":["next-js","tailwind","guide"]},{"guid":"https:\/\/kosumi.dev\/blog\/deriving-ols-estimator","title":"Deriving the OLS Estimator","link":"https:\/\/kosumi.dev\/blog\/deriving-ols-estimator","description":"How to derive the OLS Estimator with matrix notation and a tour of math typesetting using markdown with the help of KaTeX.","pubDate":"Mon, 21 Dec 2020 00:00:00 GMT","author":"i@kosumi.dev (Kosumi)","category":["next js","math","ols"]},{"guid":"https:\/\/kosumi.dev\/blog\/guide-to-using-images-in-nextjs","title":"Images in Next.js","link":"https:\/\/kosumi.dev\/blog\/guide-to-using-images-in-nextjs","description":"In this article we introduce adding images in the tailwind starter blog and the benefits and limitations of the next\/image component.","pubDate":"Wed, 11 Nov 2020 00:00:00 GMT","author":"i@kosumi.dev (Kosumi)","category":["next js","guide"]},{"guid":"https:\/\/kosumi.dev\/blog\/github-markdown-guide","title":"Markdown Guide","link":"https:\/\/kosumi.dev\/blog\/github-markdown-guide","description":"Markdown cheatsheet for all your blogging needs - headers, lists, images, tables and more! An illustrated guide based on GitHub Flavored Markdown.","pubDate":"Fri, 11 Oct 2019 00:00:00 GMT","author":"i@kosumi.dev (Kosumi)","category":["github","guide"]},{"guid":"https:\/\/kosumi.dev\/blog\/the-time-machine","title":"The Time Machine","link":"https:\/\/kosumi.dev\/blog\/the-time-machine","description":"The Time Traveller (for so it will be convenient to speak of him) was expounding a recondite matter to us. His pale grey eyes shone and twinkled, and his usually pale face was flushed and animated...","pubDate":"Wed, 15 Aug 2018 00:00:00 GMT","author":"i@kosumi.dev (Kosumi)","category":["writings","book","reflection"]},{"guid":"https:\/\/kosumi.dev\/blog\/pictures-of-canada","title":"O Canada","link":"https:\/\/kosumi.dev\/blog\/pictures-of-canada","description":"The scenic lands of Canada featuring maple leaves, snow-capped mountains, turquoise lakes and Toronto. Take in the sights in this photo gallery exhibition and see how easy it is to replicate with some MDX magic and tailwind classes.","pubDate":"Sat, 15 Jul 2017 00:00:00 GMT","author":"i@kosumi.dev (Kosumi)","category":["holiday","canada","images"]},{"guid":"https:\/\/kosumi.dev\/blog\/code-sample","title":"Sample .md file","link":"https:\/\/kosumi.dev\/blog\/code-sample","description":"Example of a markdown file with code blocks and syntax highlighting","pubDate":"Tue, 08 Mar 2016 00:00:00 GMT","author":"i@kosumi.dev (Kosumi)","category":["markdown","code","features"]}]}}