js-ast
This is a monorepo with packages to boost the DX of working with AST (using JavaScript programming language) related to:
In order to work with AST, the following processes are recognized:
[!IMPORTANT]
The following lists of packages contains what you can combine together - based on shared AST node interface format - aligned with ESTree specification.
[!NOTE]
Not all of these packages are part of this monorepo.
Getting the AST object from stringified code syntax.
Name | Languages | In this repository? |
---|---|---|
[@swc/core ] |
![icon-js]![icon-ts] | β |
[svelte/compiler ] |
![icon-svelte] | β |
In other words, walk on the AST object.
Name | Languages | In this repository? |
---|---|---|
[zimmerframe ] |
![icon-js]![icon-ts]![icon-svelte] | β |
Analyze the received AST object(s). Contains type-guards and utilities.
Name | Languages | In this repository? |
---|---|---|
js-ast-analyze |
![icon-js] | π§ |
ts-ast-analyze |
![icon-js]![icon-ts] | π§ |
svelte-ast-analyze |
![icon-js]![icon-ts]![icon-svelte] | π§ |
Sometimes you need to do some code transformation...
Name | Languages | In this repository? |
---|---|---|
js-ast-build |
![icon-js] | π§ |
ts-ast-build |
![icon-ts] | π§ |
svelte-ast-build |
![icon-svelte] | π§ |
Print the AST object or nodes into stringified code syntax.
Name | Languages | In this repository? |
---|---|---|
[esrap ] |
![icon-js]![icon-ts] | β |
[svelte-ast-print ] |
![icon-js]![icon-ts]![icon-svelte] | β |
If you can offer your time - refer to Contribution Guide.
Otherwise, consider sponsoring me.
Mateusz "xeho91" Kadlubowski