Amok: Zero-Config Live Editing

2015-04-02 00:00:00 +0100 by Alex R. Young

Amok (GitHub: caspervonb/amok, License: MIT, npm: amok) by Casper Beyer is a live-reload script with a difference: it recompiles code in a Chrome debugging session, so the application's state is retained. The video for the project reminds me of Apple's Swift demos, where code is edited and you can immediately see the changes in the UI.

This re-compilation is done through a debugging session, unlike reloading or reevaluation, re-compilation leaves the application state intact, no side effects are executed when doing re-compilation.

It's also zero-configuration, so you can pretty npm install amok and then run amok. It can launch with a compiler, so you can easily run your Browserify or Webpack projects with it.

The author has made a quick video that demonstrates the main features.

If you think this sounds cool and would like to support the author, there's a Bountysource for Amok 1.0. The goals for the 1.0 version are compatibility with more pre-processors and compilers, and to research supporting other browsers. He's looking for $4,096, and there is currently $1,250 in the pot.

The concept of modifying running code using the debugger is new to me, so I really hope this project succeeds! It already has 173 stars on GitHub, but it's not quite ready for mass-adoption yet -- there are recent issues for Mac OS X and Windows support, for example.