Dev GUI tool¶
wire_weaver_tool is an egui app (native, or in the browser through Trunk) for
looking at what WireWeaver makes of an API definition: the parsed AST and the generated code side by side.
Out of date
The tool was last updated in June 2025 and does not build against the current wire_weaver_core (it uses
modules that have since been reorganized, such as wire_weaver_core::ast). It lives outside the repository's
Cargo workspace, so CI doesn't build it either. Status and plans: TOOL-6 in the
feature tracker.
For the same jobs today:
ww api tree <path>andww api ast <path>print an API crate's resource tree and parsed bundle, seeww api.debug_to_file = "../../target/some_name.rs"in aww_codegen!/ww_impl!call writes the generated code to a file.ww introspectand the Python module show and call a connected device's API.
What it did¶
- Load and parse a source file with type and API definitions, reload or reparse it
- Show the internal AST and parser warnings and errors
- Show the generated serdes code of each struct, enum and const
- Show the generated server dispatcher and client code
- A
no_allocswitch to compare embedded and host code
Planned¶
- Input and output widgets for the types (numbers with SI units as spinner, dial or slider, strings, colors, ...)
- Documentation-like UI that can call a live server
- Server mockup UI answering with user input, recorded answers or examples
- Loading types and API from bytecode, and compiling sources to bytecode (through Rust FFI or a backend service)