This project compiles template files based on Nunjucks to WebAssembly (Wasm) Components.
It is very much a work in progress and the current compiler simply generates a component with a single export function that takes in parameters and returns the resulting template output string.
Features will be progressively added, tentatively in this order:
- Parameter interpolation
- Conditional rendering
- Repeated rendering
- Dotted/nested parameter names
- Filters
- Async/streams?
Invoke the compiler like this to generate a component for a template.
cargo run -- -i <input-path> -o <destination-path>
The best examples are currently the runtime tests, with the most interesting one being the "website" test.