<TaskList
v-for="item in items"
:item="item"
/>
Brakuje atrybutu :key, który jest wymagany w przypadku iteracji.
createNewTask: function() {
this.items.push(this.inputAddTask);
this.inputAddTask = '';
}
możesz to zrobić zgodnie z nowszymi standardami czyli createNewTask() { //body}
Masz niby w linter, ale nie widzę jego konfiguracji, w każdym razie coś czuję, że się nie stosujesz. Polecam eslint i preset airbnb.
Ogólnie spoko, ale nie bardzo co tu jest oceniać. Routingu nie ma na dobrą sprawę, łączenia z API też nie, security ani nic takiego.