This is a proof-of-concept demo of host USB DFU drivers in Javascript utilizing the WebUSB draft standard to implement USB firmware updates from the browser.
In order to run this demo, you will need:
An up-to-date version of Chrome, at least version 61 or newer
A USB DFU class device
For a WebUSB friendly USB DFU bootloader that can be flashed onto inexpensive STM32F103 boards, check out the dapboot project.
Some recent STM32 parts have on-chip USB DfuSe bootloaders that are supported by this site.