js workshop pre overhaul branch