use angular js as front end

just merge~
if conflict happened, choose mine