A Blazing-Fast Compiler for Svelte 5.
Pipeline: Parse → Analyze → Transform
- svelte-ast: AST type definitions, ESTree serialization
- svelte-parser: Zero-copy parsing with OXC allocator, winnow-based template/CSS parser, OXC for JS/TS expressions
- svelte-analyzer: Semantic analysis (scope, bindings, validation)
- svelte-transformer: Code generation (JS/CSS output)
Compare Lux parser/analyzer/transform pipeline against Svelte:
cargo bench -p lux-parser --bench svelte_compare_parser
cargo bench -p lux-analyzer --bench svelte_compare_analyzer
cargo bench -p lux-transformer --bench svelte_compare_transformerThe benchmark uses node in tools/svelte_runner for Svelte runs.
Default input is benchmarks/assets/benchmark.svelte.
Set LUX_BENCH_INPUT to benchmark a different .svelte file.
Reports are written under:
benchmarks/criterion/lux-parserbenchmarks/criterion/lux-analyzerbenchmarks/criterion/lux-transformer
MIT