I’m a huge proponent of the idea that programming tools should directly interact with coding and provide immediate, responsive feedback to changes.
RunKit is such a tool that offers a comprehensive JavaScript / Node.js prototyping environment. The service supplies you with instant, sandboxed Node.js instances called “notebooks” that allow you to experiment with the whole gamut of NPM modules.
Moreover, “from graphs and maps to low level hexadecimal inspectors” RunKit offers data visualisations for immediate visual feedback. Once done you can showcase your work by embedding it on your own website and even give your users the opportunity to further edit and experiment with it.
Another remarkable feature is RunKit‘s error analysis and Node.js stack trace visualisation (see this example). Better still, because each notebook is packaged in a Docker container when filing a bug report you can simply include a notebook reproducing the error in order to ensure the maintainer of the software in question can reproduce the behaviour you encountered as well.