fix code, add grunt