No description
Find a file
Simon Chan 2a4b6ec4f2 v0.0.4
2021-01-10 01:06:54 +08:00
.github/workflows chore(deps): update actions/setup-node action to v2 2020-12-17 10:58:55 +08:00
.vscode docs: update api docs for struct 2021-01-10 00:41:43 +08:00
packages v0.0.4 2021-01-10 01:06:54 +08:00
.gitignore test(struct): add more unit tests 2021-01-10 01:06:18 +08:00
lerna.json v0.0.4 2021-01-10 01:06:54 +08:00
LICENSE chore: initialize repository 2020-09-14 13:13:35 +08:00
package.json test(adb): add tests for base64 module 2020-12-14 13:10:43 +08:00
README.md docs: update api docs for struct 2021-01-10 00:41:43 +08:00
renovate.json chore(deps): add renovate.json 2020-09-14 13:14:21 +08:00
tsconfig.base.json refactor(struct): tweak type plugin system 2021-01-07 14:16:30 +08:00

Android Debug Bridge (ADB) for Web Browsers

GitHub license

Manipulate Android devices from any (supported) web browsers, even from another Android device.

Online demo: https://yume-chan.github.io/ya-webadb

How does it work

I'm working on a series of blog posts explaining the ADB protocol and my implementation in details.

@yume-chan/adb contains a platform-independent TypeScript implementation of the Android Debug Bridge (ADB) protocol.

@yume-chan/adb-backend-web contains a backend for @yume-chan/adb that uses Web technologies.

See README in each package for more implementation details.

Packages

This repository is a monorepo containing following packages:

Folder Name Description
adb (README) TypeScript implementation of Android Debug Bridge (ADB) protocol.
adb-backend-web (README) Backend for @yume-chan/adb using Web technologies.
event Event/EventEmitter pattern.
struct (README) C-style structure serializer and deserializer.
webpack-config Webpack configuration file in TypeScript, will output into demo folder
demo (README) Demo of @yume-chan/adb and @yume-chan/adb-backend-web.

Development

Install dependencies

If you already have lerna installed globally, run

npm run postinstall

Otherwise, run

npm install

will install lerna locally and bootstrap all packages.

Scripts

  • npm run build: build @yume-chan/event, @yume-chan/adb and @yume-chan/adb-backend-web packages.
  • npm run build:watch: build and watch changes for @yume-chan/event, @yume-chan/adb and @yume-chan/adb-backend-web packages.
  • npm run start:demo: start webpack-dev-server for the demo package.
  • npm run build:demo: build the demo package.