The simplest way would be to call Puck.eval repeatedly - you may not be able to read everything in one chunk if there's not enough RAM to store the JSON formatted output, but by reading in chunks you don't have to do anything fancy and can also get a progress bar pretty easily!
Espruino is a JavaScript interpreter for low-power Microcontrollers. This site is both a support community for Espruino and a place to share what you are working on.
Yes, if you don't want to use the IDE then building a webpage seems like a good bet.
https://www.espruino.com/Web+Bluetooth#reading-from-puck-js has some information.
The simplest way would be to call
Puck.eval
repeatedly - you may not be able to read everything in one chunk if there's not enough RAM to store the JSON formatted output, but by reading in chunks you don't have to do anything fancy and can also get a progress bar pretty easily!