templates how do they work
jshint
lint yoself