QIP component debugger

Load a QIP Content component and step through its WebAssembly instructions. Everything runs locally in your browser.

Loading debugger…

Choose a published component or a local .wasm file. For text components, type in the text box or paste while the debugger screen has focus. Use X I for input memory, X O for output memory, X R for the last read, and X W for the last write. Press M to switch between memory bytes and the page map. While examine mode is active, Up and Down Arrow page through memory.

Open the browser console and press a debugger key to see render timings. The page reports the complete synchronous update, a forced style and layout pass, and the wait for the next animation frame. To measure paint and compositing, record the keypress in the browser's Performance panel. The page adds timestamp markers to that recording. Developer Tools and console logging add some overhead, so compare several keypresses.

Not every QIP component is supported yet. The interpreter accepts modules up to 1 MiB with no imports, one memory up to 128 MiB, and one fixed funcref table with up to 4,096 entries. It supports active function-index element segments and typed call_indirect, but not table mutation. An unsupported component shows the reason in the debugger screen.

Download: qipdb.wasm (127.62 kB).