@oxc-parser/wasm v0.60.0
About
Experimental wasm package for the oxc parser, with full TypeScript typings support.
This package is built with different wasm-pack's target builds:
wasm-pack build --target webfor bundler (webpack / vite) consumption.wasm-pack build --target nodejsfor node.js
And exports the files as
"main": "./node/oxc_parser_wasm.js",
"browser": "./web/oxc_parser_wasm.js",
"types": "./node/oxc_parser_wasm.d.ts",Check out oxc-parser for an alternative in Node.js which performs the same function, but using native code via NAPI bindings (slightly faster).
Source code: https://github.com/oxc-project/oxc/tree/main/wasm/parser
Usage
Node.js
import { parseSync } from '@oxc-parser/wasm';
const code = 'let foo';
const result = parseSync(code, { sourceFilename: 'test.ts' });
console.log(result.program);Browser
import { initSync, parseSync } from '@oxc-parser/wasm';
initSync();
const code = 'let foo';
const result = parseSync(code, { sourceFilename: 'test.ts' });
console.log(result.program);Notes
The AST returned conforms to the ESTree spec for JS syntax.
For TypeScript code, the AST is broadly aligned with typescript-eslint's format, though there may be some differences.
Vite
wasm-pack build --target web is used for the wasm build.
You may need something like https://github.com/nshen/vite-plugin-wasm-pack to get it working with vite,
otherwise vite will load the wasm file as a HTML file causing a CompileError: WebAssembly.instantiate(): expected magic word error.
11 months ago
11 months ago
8 months ago
8 months ago
12 months ago
8 months ago
12 months ago
8 months ago
9 months ago
9 months ago
9 months ago
10 months ago
10 months ago
10 months ago
11 months ago
11 months ago
11 months ago
11 months ago
8 months ago
11 months ago
8 months ago
8 months ago
8 months ago
12 months ago
8 months ago
8 months ago
8 months ago
1 year ago
8 months ago
8 months ago
9 months ago
9 months ago
10 months ago
9 months ago
10 months ago
10 months ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago