Building dynamic web apps with Kotlin, WebComponents and Htmx
summary
Claims that a Kotlin backend using Kotlinx.html + HTMX + WebComponents delivers SPA-like UX while keeping one stack, reducing duplication and speeding API changes. Demo shows a data-table app with live search, add/remove cart with out‑of‑band updates, lazy loading and a GitHub relative-time element, driven by server-rendered fragments because HTMX sends HTML not JSON. Cites a migration case of 67% less code and demonstrates the approach working end-to-end with minor live-demo hiccups.
AI-written summary · about
chapters (31)
- 0:00Dynamic web apps intro
- 1:01Frontend-backend separation issues
- 4:55Most apps are tables forms modals
- 7:10Modern dev desired features
- 8:52What is HTMX and why
- 11:40HTMX simplifies frontend
- 13:51HTMX load examples
- 17:00HTMX attributes explained
- 19:30HTMX with web components
- 20:12Web components basics
- 22:22HTML vs custom elements
- 23:50HTML component examples
- 24:53Built-in elements and libraries
- 28:11Tech stack Kotlin HTMX WebComponents
- 29:21Live demo setup
- 31:49Demo search lazy load
- 32:52Demo details form interactions
- 34:03Demo update multiple elements
- 37:12Demo Kotlin XHTML DSL reload
- 38:41Kotlin XHTML DSL walkthrough
- 41:13HTMX fragments server endpoints
- 42:38GitHub relative time component
- 43:20HTMX offline limits
- 47:16Testing HTMX Kotlin
- 48:20When not to use HTMX
- 50:51Rule of least power
- 51:36Baseline project support
- 53:42Alternative stacks approach
- 55:03Stack benefits testability
- 55:45Pitching HTMX management
- 56:48Q&A
related talks
39mWhy HTMX is crushing React, Vue & Svelte
26mReimagining dynamic web apps with HTMX
41mRapid server side full stack web development with ViewComponents and htmx
49mBring back the joy in web development with HTMX and Hypermedia-Driven Applications
57mHTMX: Why You Don't Always Need a SPA Framework
40mCreating Full-stack Web Apps with Kotlin DSLs
50mhtmx 2.0 & Web Components: A Perfect Match for Frontend Development
34mModern frontends using Spring Boot and Thymeleaf with htmx
