From 61435b582e2d63e0b97ac68a31ab1aeafff0430c Mon Sep 17 00:00:00 2001 From: the1812 Date: Tue, 22 Feb 2022 13:41:58 +0800 Subject: [PATCH] Add dev tools design notes --- webpack/dev-server/design.md | 66 ++++++++++++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) create mode 100644 webpack/dev-server/design.md diff --git a/webpack/dev-server/design.md b/webpack/dev-server/design.md new file mode 100644 index 000000000..49bc37033 --- /dev/null +++ b/webpack/dev-server/design.md @@ -0,0 +1,66 @@ +# Bilibili Evolved Dev Tools + +## Server + +### Serve components +Serve (watch) contents: +- `./registry/dist/*` -> `localhost:2333/registry/*`: Build on demand, cache 16 items by default. +- `./dist/` -> `localhost:2333/core/*`: Build at startup. + +### WebSocket +Dev server on WebSocket: `ws://localhost:2333` + +Send Messages: + +`start` +```json +{} +``` + +`coreUpdate` +```json +{ + "type": "core", + "path": "core/bilibili-evolved.dev.user.js" +} +``` + +`itemUpdate` +```json +{ + "name": "name", + "displayName": "Display Name", + "type": "component", + "path": "registry/components/feeds/copy-link.js" +} +``` + +`stop` +```json +{} +``` + +## Client +As component: +- name: devClient +- displayName: Dev Client +- entry: + - Try connect `ws://localhost:2333` + - Debug toolbar (as widget) +- options: + - port: `2333` + - updateMode: `reload` | `noReload` | `style` + +### WebSocket +Receive Messages: + +- `start` +- `coreUpdate` +- `itemUpdate` +- `stop` + +### Debug toolbar +- Updated ${num} features +- Server connection status +- Action: Disconnect / Reconnect +- Support key bindings / LaunchBar actions