Thoughts on the Web.

I write about things I actually work with — Vue, Nuxt, architectural decisions, performance, and occasionally a deep dive into something that occupied me longer than it probably should have.

Nuxt Content and MDC: Writing Pages Like Components

How MDC transforms static content into interactive, component-driven pages — and why I use it to build every page on this site.

Nuxt: The Fullstack Vue Framework, Explained

Server-Side Rendering, hybrid rendering, auto-imports — what Nuxt actually does under the hood and when you should reach for it.

useFetch vs useAsyncData vs $fetch: Understanding Nuxt Data Fetching

Why Nuxt offers three ways to make HTTP requests, when to use each one, and the pitfalls waiting for the unprepared.

Deploying a PayloadCMS App on Coolify

Learn in this guide how to deploy a PayloadCMS app on Coolify. From preparation, through configuration, to the final deployment.

Setting Up a MedusaJS Project with Coolify

A step-by-step guide to setting up a MedusaJS project with Coolify.

Vue Reactivity Pitfalls: What trips everyone up

How Vue 3 reactivity works internally — and why destructuring, wrong watch targets, and composable boundaries keep causing subtle bugs.

Nuxt Performance: LCP Under One Second

What LCP actually measures, how to identify the critical element, and the Nuxt-specific techniques that make the difference between 2.5s and under 1s.

Web Animations: Less Is More

Why most web animations do more harm than good — and how to correctly implement the few that actually help.

Got a topic in mind?

If there’s something you’d like me to write about — a pattern, a tool, or a problem that keeps coming up — just reach out.