Frederik Pietzko
How to kill JavaScript from your Stack with HTMX and Kotlin
#1about 4 minutes
The growing complexity of modern JavaScript web stacks
Modern web development has evolved from simple templating to complex stacks with numerous tools, leading to unnecessary complexity for business applications.
#2about 3 minutes
Critiquing complex stacks with core programming principles
Applying principles like KISS, DRY, and YAGNI reveals how modern frontend frameworks often introduce state synchronization and code duplication issues.
#3about 2 minutes
Establishing goals for a simplified, server-rendered stack
The ideal stack should prioritize server-side rendering, reusable components, and static typing while eliminating client-side JavaScript frameworks.
#4about 3 minutes
How HTMX enables dynamic interactions without JavaScript
HTMX extends HTML with attributes that trigger server requests and swap parts of the page with the returned HTML, creating dynamic UIs simply.
#5about 1 minute
Identifying where HTMX and SSR patterns fit best
This server-centric approach is highly effective for business applications and e-commerce but less suitable for highly interactive applications like Figma.
#6about 1 minute
Building type-safe HTML on the JVM with Kotlinx.html
Kotlinx.html provides a type-safe DSL for generating HTML using standard Kotlin functions, offering better editor support and compile-time checks than string-based templates.
#7about 2 minutes
Creating reusable UI components with Kotlin extension functions
Encapsulate UI logic into reusable components by writing Kotlin extension functions that leverage the full power of the language's control flow.
#8about 3 minutes
Integrating and testing the HTMX and Kotlin stack
The Kotlin HTML DSL can be easily integrated into any JVM framework like Spring Boot, allowing for straightforward unit and integration testing.
#9about 5 minutes
Demo of a dynamic app with HTMX and Kotlin
A live demonstration showcases features like real-time validation, active search, lazy loading, and WebSocket updates, all built without a client-side framework.
#10about 2 minutes
Exploring alternative libraries for server-centric web development
Several other libraries like JTE, Alpine.js, and Hotwire offer similar capabilities for building interactive applications with a server-side rendering approach.
Related jobs
Jobs that call for the skills explored in this talk.
Matching moments
04:51 MIN
Setting up the live demo with a backend stack
Why HTMX is crushing React, Vue & Svelte.
Unlock Moments
Create a free account to watch a limited number of Moments each month.
Upgrade to PRO for unlimited access to the full archive.
Upgrade to PRO for unlimited access to the full archive.
You have an account? Log in
02:19 MIN
Questioning the default choice of SPAs for web development
Why HTMX is crushing React, Vue & Svelte.
Unlock Moments
Create a free account to watch a limited number of Moments each month.
Upgrade to PRO for unlimited access to the full archive.
Upgrade to PRO for unlimited access to the full archive.
You have an account? Log in
04:22 MIN
Finding the balance between server-side and client-side rendering
Keith Cirkle of GitHub on React Fatigue
Unlock Moments
Create a free account to watch a limited number of Moments each month.
Upgrade to PRO for unlimited access to the full archive.
Upgrade to PRO for unlimited access to the full archive.
You have an account? Log in
01:38 MIN
History repeating with modern frontend frameworks
Awful APIs: A History Lesson in Industry Mistakes and Mishaps
Unlock Moments
Create a free account to watch a limited number of Moments each month.
Upgrade to PRO for unlimited access to the full archive.
Upgrade to PRO for unlimited access to the full archive.
You have an account? Log in
04:57 MIN
The overwhelming complexity of modern web development
Anvil: Full Stack Web Apps With Nothing But Python
Unlock Moments
Create a free account to watch a limited number of Moments each month.
Upgrade to PRO for unlimited access to the full archive.
Upgrade to PRO for unlimited access to the full archive.
You have an account? Log in
02:06 MIN
Automatic code elimination and progressive rendering in Marko
Marko.js: Unsung Hero of Scalable Web Frameworks
Unlock Moments
Create a free account to watch a limited number of Moments each month.
Upgrade to PRO for unlimited access to the full archive.
Upgrade to PRO for unlimited access to the full archive.
You have an account? Log in
05:55 MIN
Building the frontend with Kotlin Multiplatform
Location Verification without GPS?
Unlock Moments
Create a free account to watch a limited number of Moments each month.
Upgrade to PRO for unlimited access to the full archive.
Upgrade to PRO for unlimited access to the full archive.
You have an account? Log in
07:31 MIN
Lessons from a hybrid reactive and blocking architecture
Going reactive with Spring WebFlux
Unlock Moments
Create a free account to watch a limited number of Moments each month.
Upgrade to PRO for unlimited access to the full archive.
Upgrade to PRO for unlimited access to the full archive.
You have an account? Log in
Featured Partners
Related Videos
Why HTMX is crushing React, Vue & Svelte.
Felix Eckhardt & Benedikt Stemmildt
Snappy UI needs no Single-Page Application
Clemens Helm
Catching up on the basics you don't really need that much code
Chris Heilmann
Interactive server side components
Miško Hevery
2021: Familiar APIs on Kickass Runtimes #slideless
Adam Bien
The Lean Web
Chris Ferdinandi
Meet Your New BFF: Backend to Frontend without the Duct Tape
Noam Honig
To New Frontiers: The Future of Frontend Development
Rainer Hahnekamp
Related Articles
View all articles



From learning to earning
Jobs that call for the skills explored in this talk.


Speech Processing Solutions
Vienna, Austria
Intermediate
CSS
HTML
JavaScript
TypeScript

doinstruct Software GmbH
Berlin, Germany
Senior
GIT
JavaScript
TypeScript

Saby New Compy
Bielefeld, Germany
Intermediate
Java
Kotlin

JO Media Software Solutions GmBh
Brunn am Gebirge, Austria
Senior
CSS
Angular
JavaScript
TypeScript



tarent solutions GmbH
GIT
HTML
Vue.js

tarent solutions GmbH
GIT
HTML
Vue.js