blob: dae6fe166f82b282b0c1045179c89a65c9672385 [file] [view]
Skia Debugger
==========================
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
Running locally
---------------
Once, after a clean checkout, run the following
```
cd ../infra-sk
npm ci
cd ../puppeteer-tests/
npm ci
cd ../debugger-app
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.
Production deployment
---------------------
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.