Webentwicklung: Ember-Werkzeug Glint 1.0 zielt auf Typsicherheit mit TypeScript

Das Team hinter dem JavaScript-Framework Ember hat Glint 1.0 fertiggestellt. Das Toolset soll für typsichere Anwendungen durch TypeScript sorgen.

In Pocket speichern vorlesen Druckansicht 1 Kommentar lesen
Digitaler Angriff

(Bild: dpa, Jens Büttner/zb/dpa)

Lesezeit: 2 Min.

Nach einer zweijährigen öffentlichen Preview-Phase hat das Ember-Team die Freigabe von Glint 1.0 bekannt gegeben. Dahinter verbirgt sich ein Toolset für die Glimmer VM, die unter anderem in dem Open-Source-Webframework Ember.js zum Einsatz kommt. Das Toolset dient dem Erstellen typsicheren Codes in Ember-Anwendungen mithilfe von TypeScript.

Wie das Entwicklungsteam ausführt, sind Templates der "Klebstoff", der verschiedene Teile der Codebasis einer Ember-Anwendung verbindet. Jedoch habe TypeScript keine Einsicht in die Templates, um darauf Typechecking und weitere Sprachfeatures anzuwenden. Diese Funktionen seien nur auf kleine Inseln von Code anwendbar, während deren Verbindungen dem TypeScript-Tooling verborgen seien.

An dieser Stelle kommt Glint ins Spiel, das TypeScript zu Einsicht in die Ember-Templates verhilft, um somit eine Ende-zu-Ende-Typsicherheit für eine komplette Anwendung zu ermöglichen. Bei Glint handelt es sich um ein Toolset, das aus Glint CLI und Glint Language Server besteht. Die Glint CLI ermöglicht das Ende-zu-Ende-Typechecking eines Projekts mit TypeScript, während der Glint Language Server das standardisierte Language Server Protocol (LSP) verwendet und somit die Einbindung in viele Editoren erlauben soll.

Durch den Language Server lassen sich auf Glimmer-Templates Features der jeweiligen Entwicklungsumgebung anwenden. Dazu zählen die Typinfo beim Hovern, das Springen zu Definitionen sowie automatisierte Codefixes und Refactorings.

Wer Glint in Ember verwenden möchte, benötigt Ember in Version 3.24 oder höher. Die aktuelle Version lautet Ember 4.12. Als weitere Mindestversionen gelten die Packages typescript 4.8.0, @types/ember__component 4.0.8, @glimmer/component 1.1.2 und ember-modifierember-modifier 3.2.7.

Dabei lassen sich @types/ember*-Packages auch dann verwenden, wenn ein Ember 3.x Release mit Long-term Support (LTS) im Einsatz ist. Allerdings weist das Ember-Team darauf hin, dass dann veraltete und in Ember 4.0 entfernte APIs in den Typen nicht verfügbar sein werden, wohingegen später hinzugefügte, zusätzliche APIs enthalten sind.

Weitere Details zum Release der ersten Hauptversion von Glint bietet das Ember-Team in einem Blogeintrag. Eine Installationsanleitung steht ebenfalls bereit.

(mai)