ESLint-Plugin

ESLint-Plugin

Ein ESLint-Plugin ist eine Erweiterung für ESLint, ein Programm, das JavaScript-Code automatisch auf Fehler und schlechten Stil prüft. Es fügt dieser Prüfung zusätzliche Regeln hinzu, zum Beispiel für ein bestimmtes Framework oder für Sicherheitsfragen.

Programmierer schreiben Anweisungen für den Computer in einer Programmiersprache. Eine der am weitesten verbreiteten heißt JavaScript und läuft in fast jeder Webseite. Weil Menschen dabei Fehler machen, gibt es Prüfprogramme, die den geschriebenen Text automatisch durchlesen und Probleme melden. Das bekannteste dieser Prüfprogramme für JavaScript heißt ESLint. Ein ESLint-Plugin ist ein Zusatzpaket, das ESLint neue Prüfregeln beibringt. Der Name wird oft klein geschrieben, weil solche Zusatzpakete im Internet meist Namen wie eslint-plugin-react tragen.

Warum Teams eigene Prüfregeln brauchen

ESLint bringt von sich aus schon einige Regeln mit. Diese decken aber nur allgemeine Probleme ab, etwa eine Variable, die angelegt und nie benutzt wird. Sobald ein Team mit einer bestimmten Werkzeugsammlung arbeitet, reichen diese Standardregeln nicht mehr. Eine solche Werkzeugsammlung nennt man Framework, bekannte Beispiele sind React oder Vue. Jedes Framework hat eigene Fallstricke, die ESLint von Haus aus nicht kennt.

Hier setzen Plugins an. Das Paket eslint-plugin-react etwa warnt, wenn jemand eine Regel von React verletzt, die zu schwer auffindbaren Fehlern führt. Andere Plugins achten auf Sicherheitslücken oder auf Barrierefreiheit, also darauf, dass eine Seite auch für blinde Nutzer bedienbar bleibt. Solche Fehler würde ein Mensch beim Durchlesen leicht übersehen.

Der zweite Grund ist Einheitlichkeit. In einem Team von zwanzig Leuten hat jeder eigene Gewohnheiten. Ein gemeinsames Regelwerk sorgt dafür, dass der Code überall gleich aussieht. Das spart Diskussionen und macht fremden Code schneller lesbar.

Regeln, die den Code als Baum lesen

ESLint liest den Programmtext nicht wie eine Zeile Buchstaben. Es zerlegt ihn zuerst in eine Baumstruktur, ähnlich wie man einen Satz im Deutschunterricht in Subjekt, Prädikat und Objekt zerlegt. Diese Struktur nennt man Syntaxbaum. Jeder Ast steht für einen Bestandteil des Programms, etwa eine Funktion oder eine Bedingung.

Ein Plugin besteht im Kern aus einzelnen Regeln. Jede Regel sagt: Melde dich, wenn im Baum ein bestimmter Ast auftaucht. ESLint läuft den Baum einmal durch und ruft dabei alle passenden Regeln auf. Meldet sich eine Regel, erscheint eine Warnung mit Zeilennummer und Erklärung. Viele Regeln liefern zusätzlich einen automatischen Korrekturvorschlag mit, den ESLint auf Wunsch direkt einbaut.

Ein Plugin liefert die Regeln nur, es schaltet sie nicht ein. Welche Regeln gelten, steht in einer Konfigurationsdatei des Projekts. Dort legt man auch fest, ob ein Verstoß nur eine Warnung ist oder den Vorgang komplett abbricht. Viele Plugins bieten deshalb fertige Voreinstellungen an, damit man nicht hundert Regeln einzeln entscheiden muss.

Vom Editor bis zur KI-gestützten Codeprüfung

Wer programmiert, begegnet Plugins meist ohne es zu merken. Im Editor erscheinen rote und gelbe Unterstreichungen im Code, sobald etwas nicht stimmt. Diese Markierungen stammen häufig aus einem Plugin. Vor jeder Veröffentlichung läuft die Prüfung außerdem noch einmal automatisch auf einem Server. Schlägt sie fehl, wird die Änderung gar nicht erst übernommen.

In den Tech-News tauchen ESLint-Plugins vor allem in zwei Zusammenhängen auf. Erstens bei Sicherheitsvorfällen: Weil jedes Projekt dutzende solcher Zusatzpakete installiert, sind sie ein beliebtes Ziel für Angreifer, die Schadcode in ein beliebtes Paket schmuggeln. Zweitens im Zusammenhang mit KI-Assistenten, die selbst Code schreiben. Deren Ausgabe sieht oft plausibel aus, enthält aber typische Fehler. Ein Plugin fängt viele davon ab, bevor ein Mensch sie prüft.

Eine Abgrenzung ist wichtig: Ein Plugin prüft nur, ob der Code sauber geschrieben ist. Ob das Programm auch das Richtige tut, sagt es nicht. Dafür braucht es Tests, also kleine Zusatzprogramme, die das Ergebnis kontrollieren. Ein häufiger Irrtum ist, ESLint mit einem Formatierer wie Prettier zu verwechseln, der nur Einrückungen und Zeilenumbrüche ordnet.

Subscribe free. Unsubscribe the second it sucks.

High-signal news across AI, business, UX, and tech. Every morning.