Schöne Seite von Google (und Gastautoren) mit einer Menge toller Demos, was Houdini alles kann. Plus ein Artikel von Una. Dies sind alles Paint API-Demos. Houdini ist technisch gesehen eine Gruppe von sieben Dingen, die alle ziemlich cool sind, und die Paint API ist nur eines davon. Paint macht Spaß, aber die Dinge werden richtig seltsam, wenn wir die Layout API bekommen, glaube ich.
Ich denke, der Wert von Houdini wird deutlicher, wenn man ein Beispiel für etwas so Spaßiges mit so wenig Code sieht (Unas Konfetti)
Man importiert es, man benutzt es. Man steuert es mit CSS Custom Properties. Das obige ist weniger als 1 kB.
Ich habe das Gefühl, die frühe Geschichte von Houdini war, dass es sich um wirklich Low-Level-APIs handeln würde, die hauptsächlich von Plattformentwicklern verwendet werden, um neue Plattformfunktionen auf sicherere Weise zu prototypisieren. Jetzt lautet die Geschichte eher: Konfetti!!!! Ich mag beide Geschichten.
Firefox bleibt hier ein großes Fragezeichen. Sie sagen, es sei "prototypisch wert", aber das fühlt sich jetzt nach den Entlassungen in ihrem Plattformteam etwas weit hergeholt an. Die Paint API ist zum Beispiel polyfillbar
(async function() {
if (CSS['paintWorklet'] === undefined)
await import('https://unpkg.com/css-paint-polyfill')
CSS.paintWorklet.addModule('https://unpkg.com/houdini-tesla/dist/worklet.js');
})()
Und dieses Polyfill ist nur ~5kB, also ist das vielleicht in Ordnung?
Vincents De Oliveiras Demos sind aber schon lange meine Favoriten. Obwohl sie alle recht kunstvoll sind, fühlen sie sich auch wie einigermaßen praktische UI-Dinge an, die man vielleicht im Web ausprobieren möchte, aber bisher immer etwas schwerfällig umzusetzen waren.
Und hier ist ein schönes schriftliches Tutorial von Estelle Weyl, Ruth John und Chris Mills, das nicht nur auf die Paint API, sondern auch auf die Typed OM eingeht (weniger glänzend, super praktisch).
Aus irgendeinem Grund erinnert mich Houdini an die alten und verlassenen CSS Shaders: In beiden Fällen sehen die Beispiele großartig aus, aber CSS Shaders wurden wegen Sicherheitsproblemen aufgegeben.
Es ist schön, enthusiastisch zu sein, wenn neue Ideen im Web auftauchen, aber wenn man in die Vergangenheit blickt, können selbst gute Ideen verworfen werden, weil es Probleme gibt. Ich hoffe, alle gefundenen Sicherheitsprobleme werden gelöst, ohne das Ganze fallen lassen zu müssen (einige wurden bereits gelöst, wie das Leck der Historie). Ich habe bereits die Erfahrung gemacht,
<style scoped>zu verwenden, mochte es und fand dann Jahre später, dass es aufgegeben wurde, obwohl es zuvor nicht nur in Chrome, sondern auch in Firefox (hinter einem Flag) implementiert war. Da ein Teil davon polyfillbar ist, sieht es so aus, als hätte es eine bessere Zukunft als diese anderen Vorschläge.Sehr gespannt, wie Houndini das Web verändern wird. Hoffentlich wird es dieses Jahr veröffentlicht.