Füge dein kaputtes GraphQL links ein und klicke auf „Fix GraphQL!!", um es zu reparierenKaputtes GraphQL einfügen

Was ist der GraphQL Fixer?

Wenn du jemals ein GraphQL-Schema in ein Tool gepastet hast und Syntax Error: Expected ":", found Name zurückbekommen hast, oder zugesehen hast, wie ein Schema-Registry-Diff scheitert, weil jemand einen Doppelpunkt nach einem Feldnamen vergessen hat — dann kennst du den Schmerz. SDL verzeiht nichts — ein einziges fehlendes Satzzeichen, und das ganze Dokument lässt sich nicht mehr parsen. Dieses Tool repariert die typischen Defekte: fehlende Doppelpunkte nach Feldnamen, doppelte Felder innerhalb eines Type, unbalancierte Klammern, überflüssige Kommas, vertippte Scalar-Referenzen. Füge das kaputte Schema in den linken Editor ein, drück den grünen Fix GraphQL!!-Button, und rechts kommt sauberes SDL zurück.

Die Reparatur folgt der GraphQL October 2021 Specification für Type-, Field- und Argument-Grammatik. Die Grammatik ist klein, aber strikt — der vollständige Regelsatz steht in der offiziellen Schemas-and-Types-Einführung. Der Fixer normalisiert die Struktur, ohne deine Feldnamen, Types oder Directives anzufassen, sodass das Diff gegen dein Registry sauber bleibt. Wenn du die Ausgabe nochmal gegenchecken willst, wirf sie in den Validator der Apollo-Server-Schema-Doku oder lass sie durch den Referenz-Parser aus graphql-js laufen.

Das Schema geht an einen kleinen AI-Service, dem klar gesagt ist, nur Syntax zu reparieren — niemals Felder zu erfinden, umzubenennen oder zu entfernen. Das reparierte SDL kommt als reiner Text zurück, bereit zum Einfügen in dein Projekt. Auf unserer Seite wird nichts geloggt.

So benutzt du den GraphQL Fixer

Drei Schritte. Jeder benutzt die echten Buttons auf dieser Seite.

1

Kaputtes SDL einfügen oder Beispiel laden

Wirf dein kaputtes GraphQL SDL in den linken Editor. Klick auf Beispiel-GraphQL, um ein absichtlich kaputtes Order/Customer-Schema mit den Defektarten zu laden, die dieses Tool behandelt — fehlende Doppelpunkte, ein doppeltes Feld, eine fehlende schließende Klammer.

type Order {
  id: ID!
  placedAt DateTime!
  total Money!
}

Der Fixer erfindet keine Felder, die du nicht geschrieben hast. Er repariert nur Syntax, die die GraphQL-Grammatik ablehnt. Zu Namens- und Design-Konventionen oberhalb gültiger Syntax lohnt sich der GraphQL-Best-Practices-Guide.

2

Fix GraphQL!! klicken

Drück den grünen Button. Der Fixer liest das kaputte SDL, identifiziert Struktur- und Satzzeichen-Fehler und schreibt das Dokument neu. Während er arbeitet, läuft eine Lade-Anzeige. Beide Editoren benutzen SDL-Syntax-Highlighting, sodass du Vorher/Nachher direkt nebeneinander sehen kannst.

3

Bereinigtes Schema kopieren

Im rechten Panel steht das reparierte SDL. Feldnamen, Types, Beschreibungen und Directives bleiben unverändert — nur die Syntaxfehler sind weg. Kopier die Ausgabe und füge sie in deine schema.graphql oder dein Registry ein.

Wann du das tatsächlich brauchst

Hand-editierte Schemas aufräumen

Hast du ein großes schema.graphql per Hand bearbeitet und einen Doppelpunkt zwischen placedAt und DateTime! übersehen? Die Fehlermeldung sagt nur „Expected :" mit einer Zeilennummer. Der Fixer setzt den Doppelpunkt zurück, ohne dass du Feld für Feld suchen musst.

AI-generiertes SDL fixen

Du hast ein LLM gebeten, ein Schema für ein neues Feature zu skizzieren, und es kam mit einem doppelten Feld, einem Komma statt einer Klammer und einem unpaarigen { zurück. Klassischer Fehlermodus. Einfügen, Fix klicken, parsbares Schema zurückkriegen — ohne neu zu schreiben.

Schemas aus Logs zurückholen

Hast du ein SDL-Fragment aus einer Log-Zeile gezogen, in der es escaped war oder die Newlines verloren hatte? Der Fixer normalisiert die Struktur, sodass das wiederhergestellte Schema tatsächlich wieder parst.

Pre-Flight für die Schema-Registry

Bevor du eine Änderung an ein föderiertes Registry pushst, lass das SDL durch den Fixer laufen, um die Satzzeichen-Fehler abzufangen, die das Diff blockieren würden. Spart dir den Round-Trip mit einem Registry, das den Upload ablehnt.

Häufige Fragen

Welche Fehler werden gefixt?

Fehlende Doppelpunkte zwischen einem Feldnamen und seinem Type (der häufigste Defekt), doppelte Felder innerhalb eines einzelnen Type, fehlende oder überflüssige schließende Klammern, überzählige Kommas in Input-Objects und unpaarige eckige Klammern um List-Types. Felder, Types oder Arguments werden nicht erfunden — repariert wird nur Syntax, die der Parser ablehnt.

Werden meine Feldnamen oder Types verändert?

Nein. Feldnamen, Scalar-Namen, Type-Namen, Beschreibungen und Directives gehen unverändert durch. Der Fixer fasst nur strukturelle Syntax an — die Namen, die du geschrieben hast, bleiben genau so.

Werden Custom Scalars und Directives unterstützt?

Ja. scalar Money, scalar DateTime, eigene @auth- oder @deprecated-Directives — alles bleibt erhalten. Der Fixer prüft nicht, ob ein Custom Scalar bei deinem Server registriert ist, nur, ob das SDL parst.

Und föderierte Subgraphs (Apollo Federation)?

Federation-Directives (@key, @external, @requires) gehen unverändert durch. Der Fixer ist eine reine Syntax-Reparatur-Schicht — er führt keine Federation-Composition aus. Lass die bereinigte Ausgabe danach durch den Composition-Schritt deines Registry laufen.

Wird mein Schema an einen Server geschickt?

Ja — der Fix läuft in einem kleinen Backend-Service, weil das Sprachmodell dort gehostet ist. Wir loggen den Input nicht, und die Antwort geht direkt zurück in deinen Browser. Pro Request gilt ein 64-KB-Limit.

Kommt immer ein parsbares Schema raus?

Für die oben beschriebenen typischen Defekte ja. Wenn dem Input so viel Struktur fehlt, dass die ursprüngliche Absicht mehrdeutig ist (z. B. ein komplett gelöschter Type-Body), kann die Ausgabe lieber einen Fehler zeigen, statt zu raten. Dann den offensichtlichen Bruch von Hand schließen und das Ergebnis nochmal durchschicken.

Andere GraphQL-Tools

Fixen ist nur ein Teil eines GraphQL-Workflows. Diese Tools decken den Rest ab: