Writing
Practical essays on Spring Boot, Kotlin, htmx, and quality in agentic engineering workflows.
- Why I Left Hashnode and Built My Own Blog with a Kotlin SSGAPR 23, 2026Hashnode became friction. I migrated my blog to a Kotlin static site generator on GitHub Pages with drafts, live reload, pages, and series support.
- Svelte 5 Islands in Spring Boot with Kotlin: The Preact AlternativeFEB 25, 2026In my previous post I showed how to use Preact Islands to handle the 5% of interactions where Alpine.js falls apart. Preact works great, but if you've ever looked…
- Fixing Gradle on Claude Code Web with a PreToolUse HookFEB 23, 2026Claude Code on the Web runs inside a sandboxed environment that routes all traffic through an HTTP proxy. Tools like curl pick up the https_proxy environment…
- Preact Islands in Spring Boot with htmx: When Alpine.js Isn't Enough AnymoreFEB 18, 2026I build my webserver-rendered web applications with Spring Boot, Thymeleaf, and HTMX. I sprinkle some Alpine.js on top for dropdowns and toggles. And for 95% of…
- How I Used Claude Code to Plan a Complex Security Migration using AskUserQuestionToolJAN 11, 2026I recently migrated my SaaS application PhotoQuest from Supabase Auth to Spring Security 7. The result? ~700 lines of custom auth code eliminated. But the real…
- Deploy your Spring Boot Application in minutes instead of hours with Dokploy on a Hetzner VPSOCT 26, 2024I’ve recently started using Dokploy for getting my projects to production quickly. It is a great alternative to Coolify. Some of the features that are really nice…
- JTE is now available on start.spring.io!SEP 30, 2024My favourite template engine JTE (the Java Template Engine) is now available on start.spring.io . It compiles the templates into native java classes offering…
- The best way to build Spring Boot applications with htmxJUL 1, 2024Why should you even care? Spring Boot developers usually build JSON APIs that get client-side rendered on the browser. Marcus Hellberg tells us why we should aim to…
- How to use Gradle test fixtures in Maven via dependencyAPR 6, 2024You can share test code between modules/projects easily using the Gradle java-test-fixtures plugin. plugins { id("java-test-fixtures") } This will allow…
- Interactive web applications with htmx and Spring BootMAR 23, 2024Nowadays Spring is typically only used for JSON API backend development. We build the web frontend with a JavaScript framework, but why ? Probably everyone has…
- An introduction to frontend development with Spring BootMAR 11, 2024I've been building my web frontends with Spring Boot for a few years. But I recently heard that some Spring Boot developers still create their web frontend with…
- Creating a JPA-style CrudRepository using MicrostreamSEP 5, 2023Example GitHub Repository What is Microstream? MicroStream is a Java native persistence layer that can store a Java Object Graph in a binary storage format…
- Secure your Spring Boot Actuator Endpoints and configure Prometheus with Basic AuthenticationJUN 18, 2023When setting up Prometheus for the first time it might not work. If you enable debug logs you will see that Prometheus cannot scrape the actuator logs. To fix this…
- How to publish a Kotlin/Java Spring Boot library with Gradle to Maven Central - Complete GuideMAY 1, 2023This is an opinionated step-by-step guide on how to publish a Kotlin/Java library with Gradle to the Maven Central repository. It assumes that: the project is built…
- Toasts with HTMX, Thymeleaf, and Spring BootFEB 20, 2023In this example, I will show you a way to return Toast Notifications from your server and render them interactively. The HTML: We will start with an HTMX Element…
- Local development with Testcontainers, Kotlin and Spring BootJUL 8, 2022It is always the best to keep your development environment as close as you can to your production environment. Don't use a h2 database as it can behave differently…
- Creating a GO GUI with Alpine.js and WebviewMAR 14, 2022There are a lot of options for building a GUI for Go applications. Coming from the web development world building the front end with HTML seems like a no-brainer…
- JWT authentication for Spring Boot simplified using GoTrue and SupabaseMAR 1, 2022In a quest to have a simpler JWT Authentication flow and not have to deal with security-related related userdata in my backend I discovered Supabase Auth which is…
- Spring Content - The better way to save and serve files and images with Spring BootNOV 18, 2021Table Of Contents Problems with saving images directly How to do it using Spring Content Save images directly into the DB Recently I added a feature to my web app…
- Deploying docker-compose the easy way, without registry or scpMAR 28, 2021Ever wondered how you can deploy your locally running docker-compose project to a remote server? There are several options: Pushing the images to a container…