Parser AST

typescript-eslint Parser Playground (Learning Mode)

Prywatny playground do czytania parser outputu, diagnostics, node ranges i selector hints przy projektowaniu reguł ESLint dla TypeScript.

  • Kod zostaje w przeglądarce
  • ESTree-like learning mode
  • Node selectors i parent path

Parser workbench

Wybierz preset lub wklej snippet TS/TSX/JS, a worker zbuduje drzewo node'ów z diagnostics i selector hints.

ESTree-like learning mode

Interfejs, typ generyczny, union literals i Array<T> do pokazania TSInterfaceDeclaration oraz TSTypeReference.

Input

AST output

Gotowe do parsowania

Uruchom parser, aby zobaczyć node tree, selected node details i diagnostics.

Co parsuje ten playground

MVP pokazuje perspektywę potrzebną autorowi reguły ESLint: typ node'a, zakres tekstu, pozycje line/column, parent path, selector hint i parser diagnostics. Realny pakiet @typescript-eslint/parser nie przeszedł browser-bundle gate bez zależności Node-only, więc produkcyjny tryb jest jawnie oznaczony jako ESTree-like learning mode oparty o TypeScript compiler API. To nie jest pełna zgodność parsera, ale daje praktyczny, prywatny model do nauki kształtu AST i projektowania selectorów.

ESTree, TypeScript AST i RuleTester

ESTree vs TypeScript AST

TypeScript AST Viewer pokazuje surowe SyntaxKind z compiler API. Ten playground mapuje najważniejsze node'y na nazwy bliższe rule authoring, takie jak TSInterfaceDeclaration, TSTypeReference, JSXElement i CallExpression.

Otwórz TypeScript AST Viewer

Kiedy przejść do RuleTester

Gdy selector i diagnostics są jasne, kolejnym krokiem jest ESLint Rule Tester Playground albo test suite w repo. Tam sprawdzasz messageId, valid/invalid fixture i autofix output.

Otwórz ESLint Rule Tester

Czego MVP nie robi

Nie ma projectService, parserServices, type-aware lintingu, tsconfig filesystem context ani uruchamiania reguł. Limit wejścia to 50 000 znaków, tree ma limit 5 000 node'ów i depth 64.

FAQ

Czy to jest pełny @typescript-eslint/parser?

Nie. To zatwierdzony fallback edukacyjny po browser gate. UI pokazuje ESTree-like learning mode, aby nie sugerować pełnej zgodności z parserem i parserServices.

Czy kod trafia na backend?

Nie. Snippet jest parsowany w browser workerze i nie jest wysyłany na serwer.

Czy mogę używać TSX?

Tak, preset TSX używa ScriptKind.TSX i pokazuje JSXElement, JSXAttribute oraz wywołania funkcji.

Kiedy potrzebuję type-aware lintingu?

Jeśli reguła wymaga symbol resolution, semantyki typów albo project references, przenieś test do repo z oficjalnym @typescript-eslint/rule-tester i projectService.