23 lines
1.6 KiB
Markdown
23 lines
1.6 KiB
Markdown
This is a [demo app](https://web.dev/porting-libusb-to-webusb/) running gPhoto2 on the Web:
|
|
|
|

|
|
|
|
Powered by a [custom fork](https://github.com/RReverser/libgphoto2) of [libgphoto2](https://github.com/gphoto/libgphoto2), a [custom fork](https://github.com/RReverser/libusb) of [libusb](https://github.com/libusb/libusb), WebAssembly via [Emscripten](https://emscripten.org/), and [WebUSB](https://github.com/WICG/webusb).
|
|
|
|
For the detailed technical write-up, see [the official blog post](https://web.dev/porting-libusb-to-webusb/). To see the demo in action, visit the hosted version [here](https://web-gphoto2.rreverser.com/) (but make sure to read the [cross-platform compatibility notes](https://web.dev/porting-libusb-to-webusb/#important-cross-platform-compatibility-notes) first). If you don't have a DSLR, you can check out the [recording in the blog post](https://web.dev/#first-things-first:-a-demo).
|
|
|
|
## Building
|
|
|
|
To build, you'll need Docker. Then:
|
|
|
|
```bash
|
|
./build.sh # runs build in Docker
|
|
npx serve ui # starts a local server with COOP/COEP
|
|
```
|
|
|
|
Then, navigate to http://localhost:5000/ in Chrome.
|
|
|
|
## License
|
|
|
|
Like the dependencies, this demo is licensed under [LGPL v2.1](https://github.com/GoogleChromeLabs/web-gphoto2/blob/main/LICENSE).
|