Pakete-Überblick
FinDSL wird als sechs zusammengehörige npm-Pakete plus die VS-Code-Extension veröffentlicht — alle gemeinsam im selben Versionsstand (Lockstep).
| Paket | Zweck | Umgebung |
|---|---|---|
@findsl/cli | Werkzeug findsl: parse/test/docgen/codegen/papgen | Node |
@findsl/core | Sprachkern: Grammatik/AST, Validator, Typen, Interpreter, Doc-Generator, Codegen | Node |
@findsl/lsp | Language-Server (LSP), von der VS-Code-Extension gebündelt | Node |
@findsl/web | Browser-Bundle der Toolchain (LSP-Worker + check/generate-API) | Browser |
@findsl/editor | einbettbarer Monaco-Editor, mountFindslEditor() | Browser |
@findsl/editor-react | React-Komponente <FindslEditor> um @findsl/editor | Browser (React) |
Die VS-Code-Extension selbst heißt findsl (Herausgeber findsl); sie ist kein @findsl/*-npm-Paket, sondern wird über den Marketplace bzw. als .vsix verteilt.
Wann welches?
Abschnitt betitelt „Wann welches?“- Steuerregeln schreiben/prüfen, Code & Doku erzeugen →
@findsl/cli(oder die VS-Code-Extension). - FinDSL im eigenen Node-Code verarbeiten →
@findsl/core. Siehe Programmatisch (Node). - FinDSL-Editor in eine Web-App einbetten →
@findsl/editor(nutzt@findsl/web). Siehe Editor einbetten. - FinDSL-Editor in eine React-App einbetten →
@findsl/editor-react(<FindslEditor>um@findsl/editor). Siehe Editor einbetten — In React. - Eigene Browser-UI ohne Monaco →
@findsl/webdirekt.
Schichtung
Abschnitt betitelt „Schichtung“@findsl/core → @findsl/web → @findsl/editor → @findsl/editor-react@findsl/core → @findsl/cli@findsl/core → @findsl/lsp → VS-Code-Extension (findsl)Alles baut auf @findsl/core als Single Source auf — so bleiben Interpreter, Codegen und Editor bit-genau konsistent.