programmier.bar – der Podcast für App- und Webentwicklung

Deep Dive 218 – Deno Desktop mit Leo Kettmeir

13.10., 06:0001:04:41

Worüber gesprochen wird

Für diese Episode wurden keine Namen gefunden, die sie von den anderen unterscheiden.

Beschreibung der Episode

Wie hat dir die Folge gefallen?
Gut 👍
Schlecht 👎
(Keine Anmeldung erforderlich)


Electron, Tauri, Electrobun – braucht es wirklich noch eine weitere Lösung, um aus dem Web-Stack heraus Desktop-Apps zu bauen? Mit Deno Desktop hat Deno seit Version 2.9 genau das gewagt und Leo Kettmeir, Software Engineer bei Deno, nimmt uns mit hinter die Kulissen dieses neuen Features.

(Hinweis: Nach der Aufnahme dieses Gesprächs hat Deno Land Inc., die Firma hinter Deno und Deno Desktop, bekannt gegeben, dass sie von Cloudflare übernommen wird. Was das konkret für die Weiterentwicklung von Deno Desktop bedeutet, ist aktuell noch unklar.)

Im Gespräch zeigt Leo, warum Deno sich selbst längst nicht mehr nur als JavaScript-Firma versteht, sondern als Tooling-Company, die Entwickler:innen das Leben leichter machen will. Sei es mit der Runtime selbst, der Package Registry JSR, dem Webframework Fresh oder eben mit Deno Desktop als Antwort auf Electron.

Erst dieses Jahr fand das Team eine praktikable Architektur für das Projekt, wobei sich Deno Desktop bewusst Konzepte von Tauri und Electrobun abgeschaut und mit dem eigenen „Deno-Flair“ kombiniert hat: einfache Nutzung, Browser-APIs statt proprietärer Schnittstellen und ein Befehl reicht, um aus einer bestehenden Webseite eine Desktop-App zu machen.

Technisch spannend ist die Bauweise: Deno Desktop lädt eine spezielle Runtime-Binary herunter, hängt die eigene, gebündelte App per Magic Header einfach dahinter, ähnlich wie es Deno Compile schon macht, und erzeugt so eine einzige Binary. Weil dabei nichts kompiliert, sondern nur zusammengefügt wird, lässt sich fast überall für jede Zielplattform cross-kompilieren. Beim Rendering kann man zwischen der schlanken System-Webview und dem Chromium Embedded Framework wählen.

Auch bei der Developer Experience zeigt sich der Anspruch: Hot Module Reloading, automatische Framework-Erkennung und ein einziges Chrome-DevTools-Fenster, in dem sich gleichzeitig Renderer und Deno-Prozess inspizieren lassen.

Ganz fertig ist die Reise aber nicht. Deno Desktop gilt in 2.9 offiziell als experimentell und laut Leo geht es aktuell vor allem um Bugfixes statt fehlender Kernfunktionen. Auch beim Testen von Desktop-Apps gibt es branchenweit keine wirklich guten Lösungen, selbst Tauri verlässt sich hier eher auf Live-Feedback der Nutzer:innen als auf automatisierte End-to-End-Tests.

Ausblick gibt es trotzdem: iOS-Builds sind schon möglich, Android ist in Arbeit, weshalb der Name „Deno Desktop“ langfristig vielleicht zu eng gefasst ist.


Schreibt uns!
Schickt uns eure Themenwünsche und euer Feedback: podcast@programmier.bar

Folgt uns!
Bleibt auf dem Laufenden über zukünftige Folgen und virtuelle Meetups und beteiligt euch an Community-Diskussionen.

Bluesky
Instagram
LinkedIn
Meetup
YouTube

Musik: Hanimo