A web-based tool for viewing and inspecting SKP and MSKP files (recorded SkPictures)
The debugger consists of one-page app that that loads a wasm module loosely based on canvaskit the wasm module draws SKP file being inspected to the canvas in the center of the page. Source for this wasm module is in the skia repository at //experimental/wasm-skp-debugger
Once, after a clean checkout, run the following
cd .. npm ci
Obtain the debugger wasm binary. You can either download the production version with
make wasm_libs
Or build it locally in the skia repo. (This also copies it to the correct dir)
cd experimental/wasm-skp-debugger make local-debug
Start serving the application locally. (from this dir)
make serve
The application can now be loaded at http://localhost:8080/dist/main.html
Live reloading is enabled and will catch any change in typescript, javascript, css, or static files including changes to the wasm binary from make local-debug
in the skia repo which copies the .wasm file here. Note that live reloading will not catch changes to webpack.config.ts
Webpack will show typescript compilation errors in the javascript console of the page and in the terminal.
There is an talk_driver that will deploy this application at ToT configured in infra/bots/task_drivers/push_apps_from_skia_wasm_images/push_apps_from_skia_wasm_images.go
It is running make release_ci
which in turn runs the build_release
script in this directory.
In production, the app is served from go/debugger-app/main.go. See https://skia-review.googlesource.com/c/buildbot/+/334818 for the initial deployment.