angular front end stuff, basic sock
fix merge conflict by force