Skip to content

Latest commit

 

History

History
78 lines (60 loc) · 4.81 KB

htmx.md

File metadata and controls

78 lines (60 loc) · 4.81 KB

Hypermedia-Driven Applications with HTMX

If anyone is interested in this talk, please contact me (see below for contact information). I am currently preparing a one-day workshop.

next public talk(s):

  • tbd

past public talks

Talk Resources

HTMX resources

HTMX + JVM (Java, Kotlin, ...) related stuff

Comparisons with other frameworks

JVM

Oliver Nautsch

notes for myself

most noticeable things / todo

  1. When I use the kotlinx html dsl and use the domain model directly, I get hints in the HTML (as the DSL) from the compiler. At this point everyone becomes very attentive. For example, at compile time I get an error if I remove an attribute in the domain model but still use it in the UI code. So no runtime error, which is very good. I should do all the examples with the typesafe html dsl.
  2. We need a component library for the kotlins html dsl. I have no idea at the moment what makes sense, but the listeners keep asking.
    • Ossi:: the problem here is, that this is always language depenced. Designer might not want that, or can not do it.
  3. The string literals when setting the attribute values of HTMX in the DSL feel unnatural. An extension of the DSL would also make sense here.
  4. Make an example with inline editing
  5. Look at fritz2 - web components?
  6. ✅ Somehow I have to get the type save routing (see: https://ktor.io/docs/server-resources.html#resource_url) from Ktor into the DSL when I configure the HTTP methods with HTMX.
a(classes = "text-red-600 hover:text-indigo-900") {
    id = "contact_${contact.id}"
    href = "#"
    attributes["hx-delete"] = application.href<Contacts.Id>(Contacts.Id(id = contact.id))

...


@Resource("contacts")
class Contacts {
    @Resource("{id}")
    class Id(val parent: Contacts = Contacts(), val id: UuidAsString)
}

feedback

  • Guter Mix von Einführung/Basics, Thema und dann der Aspekt Frontend Team. (translated: Good mix of introduction/basics, topic and then the frontend team aspect.)
  • Einleitung/Einstieg war etwas schwierig, wenn man sich vorher noch nicht HTMX angeschaut hat. (translated: Introduction/entry was a bit difficult if you haven't watched HTMX before.)
  • Wichtiges Thema. Wes? Frontends ist mehr als Angular, Vue, React,... (Frontend Architektur) (tranlasted: Important topic. What? Frontends is more than Angular, Vue, React,... (Frontend architecture))
  • Sehr spannende Erkenntnis bzgl. Code Completion und Überprüfung zur Build-Zeit im Beispiel mit Kotlin. (translated: Very exciting insight regarding code completion and check at build time in the example with Kotlin.)
  • Super workshop heute!